My workflow

4 replies

GACKT

Customer, bbp_participant, community, 40 replies.

Visit profile

7 years ago #116150

Good day all,

 

Happy new year 2017!

I wish you a new year full of health, wealth, love and happiness.

 

First of all, I would like to express deep gratitude for this amazing beautiful software.

 

After 6 months of usage I am now fully familiarized with every part of it, so I thought I’d share my current workflow.

 

Feel free to share thoughts and input.

 

 

============
SQ Workflow
============

– Correct and appropriate data & strategy settings for market before generation, such as:
    – Data Manager data import & settings
    – Performance settings: many cores + don’t store orders
    – As long dataset as possible, longer OOS preferable,
      although generation can be done on shorter dataset for the sake of speed,
      however always verify on maximum data, the longer viability the better robustness
    – For M15 and lower, generation on tick data is preferable, otherwise M1
    – Trading times
    – Pip ranges
    – Strategy rules symmetry,
      my current is full symmetry to avoid overfitting
    – Genetic (with/without Training/Validation) vs. Random,
      my current is Genetic with Training/Validation
    – Fixed lot size for comparability, usually 0.1 per trade
    – 50 Databank entries
    – Loose dismissal conditions (pf 1.3, win rate 45%, number of trades)
    – Weighted fitness
– Sort Databank results on OOS Weighted Fitness. Check top to bottom.
  Analyze strategies’ metrics and characteristics to get a full understanding, such as:
    – Net profit
    – Win rate
    – Drawdown
    – SQN
    – # of trades
    – Average trade
    – Return/DD
    – Profit factor
    – Equity curve shape
    – Stagnation
    – List of trades (see if one single trade takes up a big portion etc.)
    – Average/max win
    – Average/max loss
    – Average trade time all/win/loss
    – Symmetry
    – Performance year-on-year/times/days/months
    – Check logic of pseudo code
– Tick all appealing strategies (duplicates unnecessary) and send to Retest.
– Go to Retest, make all of it IS and verify any strategy on tick data.
– Check strategies’ performance with higher spread and slippage.
– Run robustness test Randomize strategy parameters 20/20 with 200 MC.
  Preferably at least 50% of original performance at 95% confidence level, but at least
  profitable at 100% confidence level. Also study shape of curves, preferably bundled
  together with as little digression as possible. Be strict but not overly perfectionist.
  The goal is a complementary portfolio.
– Run robustness test Randomize trades order Exact, same analysis as above.
– Run robustness test Randomize trades order Resampling, at least profitable at
  100% confidence.
– If any strategy clears these steps, save str-file (copy from StrategyQuant>temp for smaller size),
  pseudo code-file and mq4-file with values to parameters.
– Test, analyze and verify strategy in Metatrader StrategyTester. Save report.
– If qualified, run Walk Forward Matrix:
    – Simulated, OOS 10-40-10, runs 5-30-5, preset parameters 20%, multiply step
      value by 3
    – Robustness score components:
        – 3×3 cells with at least 7 combinations
        – WF Net Profit Stability >= 50% (most important)
        – Max % Drawdown in one run <= 25%
        – Max Stagnation in % <= 35%
        – Net Profit in % of orig. strategy >= 50%
        – WF Sharpe Ratio Stability >= 50%
        – System Quality Number >= 2.8
        – WF Return/DD Stability >= 50%
    – Analyze 3D charts, in particular Bar Chart to double-check stability of
      WF runs with different values such as Net Profit, WF Net Profit Stability,
      Profit factor, Max DD %, SQN etc.
– If failed, strategy might be too lacking in robustness. Analyze, evaluate further and make
  overall judgment of tradeability thereafter. In any case, keep strategy files for future
  reference and inspiration.
– If succeeded, analyze how much performance gain by optimization and if extraordinarily
  appealing, analyze & log parameter values in “WF results & parameters” and recommended
  reoptimization guidelines. Possibly re-run WFM with only trade management parameters
  and only optimize those to avoid overfitting.
– Optional research: Improve strategy.
 

0

gentmat

Customer, bbp_participant, community, 234 replies.

Visit profile

7 years ago #140942

Good day all,

Happy new year 2017!
I wish you a new year full of health, wealth, love and happiness.

First of all, I would like to express deep gratitude for this amazing beautiful software.

After 6 months of usage I am now fully familiarized with every part of it, so I thought I’d share my current workflow.

Feel free to share thoughts and input.

============
SQ Workflow
============

– Correct and appropriate data & strategy settings for market before generation, such as:
– Data Manager data import & settings
– Performance settings: many cores + don’t store orders
– As long dataset as possible, longer OOS preferable,
although generation can be done on shorter dataset for the sake of speed,
however always verify on maximum data, the longer viability the better robustness
– For M15 and lower, generation on tick data is preferable, otherwise M1
– Trading times
– Pip ranges
– Strategy rules symmetry,
my current is full symmetry to avoid overfitting
– Genetic (with/without Training/Validation) vs. Random,
my current is Genetic with Training/Validation
– Fixed lot size for comparability, usually 0.1 per trade
– 50 Databank entries
– Loose dismissal conditions (pf 1.3, win rate 45%, number of trades)
– Weighted fitness
– Sort Databank results on OOS Weighted Fitness. Check top to bottom.
Analyze strategies’ metrics and characteristics to get a full understanding, such as:
– Net profit
– Win rate
– Drawdown
– SQN
– # of trades
– Average trade
– Return/DD
– Profit factor
– Equity curve shape
– Stagnation
– List of trades (see if one single trade takes up a big portion etc.)
– Average/max win
– Average/max loss
– Average trade time all/win/loss
– Symmetry
– Performance year-on-year/times/days/months
– Check logic of pseudo code
– Tick all appealing strategies (duplicates unnecessary) and send to Retest.
– Go to Retest, make all of it IS and verify any strategy on tick data.
– Check strategies’ performance with higher spread and slippage.
– Run robustness test Randomize strategy parameters 20/20 with 200 MC.
Preferably at least 50% of original performance at 95% confidence level, but at least
profitable at 100% confidence level. Also study shape of curves, preferably bundled
together with as little digression as possible. Be strict but not overly perfectionist.
The goal is a complementary portfolio.
– Run robustness test Randomize trades order Exact, same analysis as above.
– Run robustness test Randomize trades order Resampling, at least profitable at
100% confidence.
– If any strategy clears these steps, save str-file (copy from StrategyQuant>temp for smaller size),
pseudo code-file and mq4-file with values to parameters.
– Test, analyze and verify strategy in Metatrader StrategyTester. Save report.
– If qualified, run Walk Forward Matrix:
– Simulated, OOS 10-40-10, runs 5-30-5, preset parameters 20%, multiply step
value by 3
– Robustness score components:
– 3×3 cells with at least 7 combinations
– WF Net Profit Stability >= 50% (most important)
– Max % Drawdown in one run <= 25%
– Max Stagnation in % <= 35%
– Net Profit in % of orig. strategy >= 50%
– WF Sharpe Ratio Stability >= 50%
– System Quality Number >= 2.8
– WF Return/DD Stability >= 50%
– Analyze 3D charts, in particular Bar Chart to double-check stability of
WF runs with different values such as Net Profit, WF Net Profit Stability,
Profit factor, Max DD %, SQN etc.
– If failed, strategy might be too lacking in robustness. Analyze, evaluate further and make
overall judgment of tradeability thereafter. In any case, keep strategy files for future
reference and inspiration.
– If succeeded, analyze how much performance gain by optimization and if extraordinarily
appealing, analyze & log parameter values in “WF results & parameters” and recommended
reoptimization guidelines. Possibly re-run WFM with only trade management parameters
and only optimize those to avoid overfitting.
– Optional research: Improve strategy.

thank bro . i wish u have added a setting file so we can import to sq and use ur steps faster

Sent from my iPhone using Tapatalk

0

GACKT

Customer, bbp_participant, community, 40 replies.

Visit profile

7 years ago #140954

Thank you too bro.

 

Sure, here are some example generator settings for EURUSD H1.

0

gentmat

Customer, bbp_participant, community, 234 replies.

Visit profile

7 years ago #140961

Thanks ! im trying your way , 

Question :  I noticed you keep 50 strategies in databank . So how much time you leave your computer on 1 day, 2 days ? strategies will be changed  so how much time is optimal to leave it on searching and swaping for best 50

0

GACKT

Customer, bbp_participant, community, 40 replies.

Visit profile

7 years ago #140995

I run it for 0.5-2 days with an i7-3610QM, 8 GB RAM and Samsung 850 EVO SSD.

I check a few times per day and stop generation as soon as a handful of interesting strategies have entered the Databank in order to get on with evaluation of tradeability (that is if one uses just 1 instance of SQ).

 

2 days is my maximum wait time without anything decent entering the Databank.

After that I tend to think the generation settings need to be altered in order to find edges within a reasonable amount of time (for example, change SL/PT-ranges, R:R-ratios, trading times, narrow building blocks, use pre-defined rules through “Create strategy” etc.).

 

From what I know, when the Databank is full with interesting entries there is no particular benefit to letting generation continue run and swap strategies, since duplicates can enter and one can just re-start generation later again without really losing search material (if current genetic evolution is stagnating).

That is, if SQ is not storing info about building blocks & combinations previously tried & evaluated between random generations, anyone knows this?

0

Viewing 4 replies - 1 through 4 (of 4 total)