Reply

Must have – minimum criteria for initial evaluation – Genetic

12 replies

rshah

Customer, bbp_participant, community, 20 replies.

Visit profile

8 years ago #113969

Guys,

 

i recently bought the SQ and  have been testing it for last 3 days….i am more conservative so i tried to give couple of filters upfront (return/dd, profit factor, SQN etc as a part of initial evaluation – genetic options and more under Ranking options…and SQ did not return any strategy….

 

I tried to cut down these filters and it worked.. This will help any newbies as i am sure all experiences folks went through same questions in their mind initially.

 

SO my question is:  

 

1) Are there any absolute must minimum filters you need to have as a part of initial genetic evaluation and also part of ranking options to begin with ? which will not prevent evaluation not to return anything but it allows it to return at least few strategies that meets basic criteria (then user can further optimization, Walk forward etc…..)  –

 

2) Final must have criteria at the end before you go live with your strategy  —- profit factor – acceptable range ?? , Return/dd – acceptable range ?? , SQN , MAX DD%, Win ratio , Return on initial capital etc…..

 

3) I understand, there is no holy grail –  so you can not have strategy where all your filters always fits within the range so my question here is what is the trade off between primary quality filters (Profit factor vs SQN vs Return/DD , Max DD, Win ratio % etc)—

 

do you have accept profit factor less then 1.1 and have return/dd ratio > 4 and willing to have win ratio < 50%  OR you can have Profit factor > 2 but fine with return/dd > 2 < 4 etc…..

 

4) what do you guys conservatively expect or aggressively expect from any strategy(Forex, future etc)  in terms of % return ? e.g. if forex, you can expect 5% a month on initial invested capital,, if futures, 2% of initial capital  monthly or yearly etc…….i know it is based on individual preferences but still i am asking if anyone had figured it out a formula…. 🙂 – 

 

I realize i am asking a lot but answers to these questions will help all the newbies and may be for experienced folks , they might learn something new… After all in trading, learning never ends…

0

rshah

Customer, bbp_participant, community, 20 replies.

Visit profile

8 years ago #131415

the reason why i am asking above questions is in the attachment .

 

1) is it worth to explore/optimize/WFO this basic strategy forward ? if i know the answers to above questions then i will know what to do.

 

  

0

mikeyc

Customer, bbp_participant, community, 877 replies.

Visit profile

8 years ago #131417

You can’t really rely on a Monte Carlo analysis with just a few runs, I run a minimum of 200 iterations and to be honest that’s way too low.

 

For the strategies I’m developing at the moment, I look for and extremely linear (high stability > 0.9) in sample and out of sample equity curve.

 

I focus on yearly average return, return/DD, Strategy Quality Number.  I also look to make sure Long and Short profit ratio is as evenly balanced as possible.  Also, that the average trade is not going to be swamped by commission + spread if the spread increases.

 

PS. Your trade size is too large for the starting equity if you are seeing nearly 50% drawdown.  I don’t consider any strategy with much more than 10% drawdown as a rule of thumb.

0

rshah

Customer, bbp_participant, community, 20 replies.

Visit profile

8 years ago #131419

Mike,

 

thanks for the quick response.

 

are you putting all of these filters in the first run (when genetic evaluation is running) or are you using these criteria at the last  as a part of ranking options. this will answer my first question. 

 

Or should i say ;- you run optimizer, WFO etc only after strategy passes all of your criteria mentioned above as a part of genetic evaluation. (return/dd – do you have specific number in mind e.g. > 4 ,   SQN – any specific number in mind e.g. > 2.5

 

Also what do you mean by  trade size is too large for starting equity ?

0

gentmat

Customer, bbp_participant, community, 234 replies.

Visit profile

8 years ago #131455

Great keep up the discussion guys to learn more 

0

mikeyc

Customer, bbp_participant, community, 877 replies.

Visit profile

8 years ago #131496

Everyone probably does the process differently, but I follow this loose set of steps.

 

  1. Using random generation, I produce as many strategies as I can over a period, say 48 hours.  I have the filters on so only those strategies that meet the criteria make it into the data bank.
  2. I then run a fairly short Genetic evolution, with only some very loose filters on the genetic selection, using the random strategies above as initial candidates, no random additions.  I don’t run it too long as it ends up making 100’s of indentical clones.  I have the same data-bank filter on the genetic ouput so that the genetic results mix with the starting population in the data-bank. I wait until the genetic ones have pushed the initial ones out of the databank.
  3. From these I sort them by fitness (best to worst) and you usually find some that are obviously very similar (by number of trades, equity curve, trading rules in psuedo-code) and others that are quite different.
  4. I take a selection of the best ones that look different to each other, and retest using at least 200 Monte-Carlo simulations, varying parameters and using resampling.
  5. From the above I select only those whose RT/DD is good and the chart of runs has all lines in profit and tightly bunched.
  6. These (probably only 2 or 3 strategies now), go on to part improvement, retest MC again, then optimizer (WF followed by simple).

I repeat the above process for each currency pair.  The difference is I make my strategies session specific, that’s been the epiphany for me with forex.  Each pair has very specific behaviour in the different sessions (New York, Asia, US/EU overlap, etc).  Currently I’m working on scalping (not extreme) on low timeframes in very tight time ranges (just a few hours).

1

rshah

Customer, bbp_participant, community, 20 replies.

Visit profile

8 years ago #131520

Mike,
 
this is very helpful.
 
Can you please elaborate more on step 2…
E.g. let’s say you found 20 strategy that made it to data bank by running random generation. now you are sitting on these 20 strategies in the databank. So my question is: – do you keep these 20 strategies in your databank as it is and then just change the generation from random to Genetic evaluation ( i am assuming you are keeping the filters also as it is which you used during random generation) ? Now you run the process….and the news strategies that passed all the criteria via genetic evaluation will add to pool of those 20 strategy ????  is it right ? 
 
I did not get the part where you have said :  “”I wait until the genetic ones have pushed the initial ones out of the databank.”” – 
 
Question on Step 4 :- I did not see any re sampling option under Robustness test section (build strategy section).  In the user guide, it states somewhere that more advance resampling method (See below)…How do you choose resampling ?. 
 
Below is the Quote from User Guide
 
Randomize Trades Order under Robustness Test Section
 
– this is the simplest test, in the Exact variation it only randomly shuffles order of the trades. This doesn’t change the resulting Net Profit, but it is very useful in examining different variations of Drawdown that can be a result of different order of trades.  
 
In more advanced Resampling variation of this test the trades are not just shuffled. Instead the program randomly picks total number of trades from the pool of all trades in history. The difference is that in this method the list of trades might not be the same. It can pick one trade multiple times and some other trade might not be picked at all. 

0

gentmat

Customer, bbp_participant, community, 234 replies.

Visit profile

8 years ago #131533

I did not get the part where you have said :  “”I wait until the genetic ones have pushed the initial ones out of the databank.”” – 
You understood him right . You was lost by the pool .. He meant by settings he put store only 20 strategies ( or lets say 1000) whatever the number he already put in random his strategies . 
Now to your right you ll see strategy weighting … so when generating the genetic ( IF a strategy is better than the worst strategy in the bank already and bank can only store 20 strategies then this new genetic strategy will replace the random one (the worst one of it).
He did say he doesnt let it run so much because if he does genetic usually get similar strategies so if the similar one was better than all then almost 1 strategy will swipe off all strategies and replace them all . so he will be monitoring when to stop the genetic to not loose the one before (genetic that has replace the old once ) . 

0

gentmat

Customer, bbp_participant, community, 234 replies.

Visit profile

8 years ago #131534

Question on Step 4 :- I did not see any re sampling option under Robustness test section (build strategy section).  In the user guide, it states somewhere that more advance resampling method (See below)…How do you choose resampling ?. 

There is many options ( you can test on new data sample) 20% . read the 5 or 7 robustness that are there you wont be lost . 

just run the simple one shuffle and spread and slippage like 500 times and read the pseudo that the strategy makes sense not some atr stop loss luck kicked in . 

0

gentmat

Customer, bbp_participant, community, 234 replies.

Visit profile

8 years ago #131535

I am answering your question but i am failing myself to pick 1 good strategy . i feel all of them are curve fit . i am trying to find a way to run away from that ! i have a theory i ll be posting my results if i find something and we  let guys like mike or thread and other active members criticize it so to make it better . 

But as i can notice now everything i see is curve fit procedure of making strategies . 

0

rshah

Customer, bbp_participant, community, 20 replies.

Visit profile

8 years ago #131540

Gentmat,

thanks for the reply. I digested your answer about wait until genetic ones so i am putting it below in easy to understand format for other newbies.  

 

Question:- I did not get the part where you have said :  “”I wait until the genetic ones have pushed the initial ones out of the databank.””

More simplified answer below

Step1 – Run random generation.

Step 2: Based on the ranking filters/Criteria you have choosen, you might get (e.g. let’s say 30) good strategies in the data bank based on random generation.

Step 3:- now go back and change the option from random to genetic and keep the ranking filters as it is but continue to monitor the results in the databank. WHY ? you do not want your good random 30 strategies wiped out by same 30+  genetic strategies which are cloned (the way genetic runs you might have many strategies in databank with same pudeo code so you do not want your good 30 random strategies to be wiped out 30 genetic strategies which are cloned.)  Above scenario is only true if you set number of strategies to be stored in the database < the number of strategies you already have in the databank as an initial population – 30 in our case here… if you keep it more , it will not replace it until genetic returns more strategies then it is allowed to store…. so that is the reason, you have to run only short cycle of genetic and keep monitoring the results in the databank. Off course, if you received better strategies from genetic and they are not cloned then yes you can let those random strategies pushed out by genetic.

1

rshah

Customer, bbp_participant, community, 20 replies.

Visit profile

8 years ago #131541

gentmat,

 

i did not able to digest your answer on Re sampling. as it seems like a manual approach suggested by you.

 

But in the user guide, it states that “Instead the program randomly picks total number of trades from the pool of all trades in history” 

 

so my understanding is :- it is either an automated option available somewhere or radio button or check box or something automatic way where you can let system knows to use advance method. Unless my interpretation from user guide is wrong.

0

gentmat

Customer, bbp_participant, community, 234 replies.

Visit profile

8 years ago #131552

I think you mistaken me with micky . I only explained for you his answer but if you need specificly how he is thinking i think he is the only one who can answer that.
I think he meant by resampling , either retest or robustness new data sample to check if the strategy is working under any change of market behavior.
Look there is many ways of using this program dont stick to the guide as its only Mark approach.
Honestly i beleive that 99% of the strategies are curved fit as when i read the pseudo code of each strategy i know for sure 99% are so . i fidnt find 1 yet that fit the idea of smart patern im not there yet.
I got one strategy i made by manuel programing that works on almost all pairs 15 of them on and it look nth like sq random guess . by one word it have logic … by random testing u can get logic but i dont know the probability maybe in a life time maybe in 1 sec . try ur luck and read pseudo code before u mess ur head up with robustness tests and whatever comes into ur mind.
look at the curve, then drawdown then pseudo they are 80% of the success

0

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