Managing Your Pine Optimizer Workspace
Transcript
Hello traders,
This is Tim with you, once again, to continue our video tutorial series on trading strategy optimization, using Pine Optimizer.
In the previous two sessions, we’ve seen how to create and run a Pine Optimizer campaign, as well as analyzing its results and choosing a winning backtest.
In this session, we'll explore how best to manage your Pine Optimizer workspace, which is especially important if you’re planning to optimize multiple strategies that evolve, over a period of time.
As a reminder, we’re currently looking at the backtest results of a campaign, for the MACD strategy, which we created in an earlier session.
To continue, let’s return to the strategies view, which we can do by clicking the home button in the header navbar.
We're now back in the strategies view, and the next step is to explore how strategy versioning works.
It's important to understand that, when optimizing a strategy, it only makes sense to compare backtest results that were created using identical strategy properties and scripts.
That’s not to be confused with strategy parameter settings, which definitely can, and should, vary between backtests.
But the actual script used to implement a strategy, and its global property settings, must be uniform across a cohort of backtests, in order for those backtests to be comparable with each other.
If we modify either of these critical elements of a strategy, it would no be longer possible to add new backtests to that strategy, because any new backtests would not be eligible for direct comparison with the existing ones.
To overcome this problem, we use versioning.
You'll recall that, when we created this MACD strategy, Pine Optimizer automatically assigned it an initial version. A version is essentially a collection of campaigns, for a given strategy, that all share the same strategy properties and Pine Script code.
If we modify the script or properties of a strategy, after it has executed any backtests, Pine Optimizer will automatically create a new version when you save your changes.
Since this strategy has already executed some backtests, under the Demo campaign that we created previously, we can now see this versioning process, in action.
I can edit the strategy, by clicking the Edit button on its latest version, and we'll see the same configuration dialog that we initially used, when creating it.
For this demo, I'm going to make a small change to the script, but changing any of the strategy properties would also have the same effect. When I save the changes, Pine Optimizer creates a new version and sets it as the active version.
This is similar to how TradingView assigns a new version number to your Pine Script each time you modify it and save your changes.
It's still possible to select the original version and work with it. But, if we decided to add a new campaign to that old version, it's important to keep in mind that the new campaign would inherit the old strategy configuration, so it would not reflect the Pine Script change that I just made.
I'm going to delete the new version that we just created, since we don't actually need those script changes for this demo. When we delete a version, Pine Optimizer prompts us to confirm our intentions, as this action is not reversible.
When you delete a version, it also deletes all of its contained campaigns and their backtests, so it's important to use this feature carefully.
You can also delete individual campaigns, or complete strategies, if you wish, using the same procedure.
When you've been working with Pine Optimizer for a while, you may accumulate a considerable number of strategies, some of which you consider to be obsolete or redundant.
One option is to delete these unwanted strategies. But, if there's a possibility that you may want to refer back to them, later, it may make more sense to just hide them, so that they don't clutter up your workspace.
You can do this using the Hide button on any visible strategy. And if you later wish to retrieve that hidden strategy, you need to temporarily unhide all of your hidden strategies, using this toggle button in the strategies panel header.
As you can see, I actually have a number of hidden strategies that reflect old optimization projects that I am no longer actively working with.
To reinstate the strategy that I just hid, I can just swap its visibility state using the same button that I used to hide it.
Once you've restored the visibility of the strategies that you want to see, you can hide the remainder using the same header toggle button that you used previously.
But before we do that, let’s take a look at a small detail that you may have been wondering about.
You’ll notice that each strategy and each campaign has a numeric value, in the form of a blue badge.
This number represents the score of the highest performing contained backtest.
So, in the case of a campaign it’s the score of the top-performing backtest, among all backtests in that campaign.
And, in the case of a strategy, it’s highest score achieved by any campaign, in any version of that strategy.
So, these score badges give you an easy way to judge how well an optimized strategy performs, relative to other optimized strategies.
Now, you may be wondering whether these score badges contradict the principle that I mentioned earlier, that we shouldn’t directly compare backtests unless they were created from identical strategy configurations.
So, to clarify this principle, I‘ll reiterate that it’s not a good idea to make optimization decisions by comparing backtest results that originate from different strategy configurations, since a parameter permutation that performs badly under one strategy configuration might perform much better under a slightly different configuration. This is quite a complex topic, but there’s no need to sweat the details, as Pine Optimizer’s versioning mechanism automatically prevents you from making inappropriate comparisons of backtest detail, since it never allows you to see two backtests together in the backtest results view, unless they are directly comparable.
On the other hand, it’s definitely OK to make high-level comparisons between optimized strategies, to decide which ones deserve your further attention, and the score badges are an easy way to do this.
You’ll note that I have a selection of very poorly performing strategies here. I hid them, because they’re of no further interest to me, and I can hide them again by setting the strategies list so that it doesn’t show any hidden entries.
And, with that, we’ve reached the end of this session on managing your Pine Optimizer workspace.
In the next session we'll see explore how to deal with backtest execution failures. In the meantime, thanks for watching.