Jump to content

Indo Run (First post will be updated with new versions/setfiles/etc.)


Recommended Posts

See reply in blueish ;)

 

Thank you Expat. It is getting more clear now. I am sorry for many question that will follow, but I am really interested in this great system.

 

1. How do you create the initial limit orders pair? Immediately after you run the EA or there is some random delay? No delays. If no filter signal the Limit Orders are placed at the price offset defined.2. When I started the back test, pair of limit orders was created and then deleted after few bars. Why it was deleted? Deleted due to filter signal either e.g. ATR3. Is it always fixed distance between limit orders? Can it be made variable (placing each new order further, progressively increasing distance between orders)? No, you can adjust as well can set the distance in a dynamic mode (see page 1 of this thread or check the mq4 variables4. Most important - how the close function calculate when to close all orders in the basket?The profit is the sum of the opened trades per symbol and magic number, while >= profit target it will close.

5. What is magic number and what it does? Magic Number is an identifier for the trade to be recognized by the EA6. What is ATR filter and zones? ATR is Average True Range. The ATR Filter seperates in various Zones7. What is "profit target in ACC currency"? Thats the Take Profit in account currency8. How do I protect myself from the situation when the trend is going up constantly without retrenchments? See my first post and remarks on that.

I hope it's ok I asked so many questions.

 

Thanks,

 

hammer083

Link to comment
Share on other sites

  • Replies 383
  • Created
  • Last Reply

Top Posters In This Topic

Hi All,

 

Envelope Filter in addition to ATR helps driving below. I have made a run so far on Single Basket, control points for 2010 driving for 6.8% DrawDown. Below is the same setup on every tick for the first 3 month 2010 with a DD of 7.39%. Looks cool, let me do a full set and will up the thing shortly.

 

Cheers

 

http://img21.imageshack.us/img21/2779/strategytester.gif

 

Initial deposit 10000.00

Total net profit 1721.40 Gross profit 2904.80 Gross loss -1183.40

Profit factor 2.45 Expected payoff 6.83

Absolute drawdown 63.80 Maximal drawdown 815.40 (7.39%) Relative drawdown 7.39% (815.40)

 

Total trades 252 Short positions (won %) 114 (65.79%) Long positions (won %) 138 (63.77%)

Profit trades (% of total) 163 (64.68%) Loss trades (% of total) 89 (35.32%)

Largest profit trade 74.90 loss trade -71.10

Average profit trade 17.82 loss trade -13.30

Maximum consecutive wins (profit in money) 6 (227.50) consecutive losses (loss in money) 5 (-193.70)

Maximal consecutive profit (count of wins) 227.50 (6) consecutive loss (count of losses) -193.70 (5)

Average consecutive wins 3 consecutive losses 1

Edited by expat1967
Link to comment
Share on other sites

I like the fundamentals of this strategy. It's like martingale except that I think its possible to avoid bankruptcy :) So far I've had best results with no filter and optimized steps. I've also had good results with envelope indi but on same tf. But I'm trying to hedge current positions(if any) when outside envelope. A bit tricky and it needs a little more logic to avoid whipsaw but it looks promising. To all who uses this strategy live. Be aware since without additional functionality I think it is like martingale if a long one-way trend appears...it can ruin any account if long enough.
Link to comment
Share on other sites

Hi all,

 

just saw that FFCAL is not taking the post news timeout after the 11am GMT news. Must be a FFCAL issue related to speeches. Megadroid N1 has the same issue. Same as on Friday... Thus be careful. Somebody got a FFCAL with a higher version number than 20? Or a working DAILFX News Indicator?

 

Cheers

Edited by expat1967
Link to comment
Share on other sites

Dear expat1967,

 

Would you please describe the most preferable market condition for this brilliant EA, as I assume it would be a less trending or range-bound but modestly volatile market? I do appreciate it if you'd render an opinion based on your empirical observation.

 

Kind regards,

Link to comment
Share on other sites

This can get you started:

 

 
extern string Menu = "Indo Run Setup";
extern string EAName = ""; //Comment for your orders, you might better leave it empty ;) 
extern bool IndoRunLabelOn = false; //Switches Chart Label on/off
extern string MagicNumber = "Random Magic will overide manual set Magic Number";
extern int Magic = 128738; //Order Magic Number
extern bool UseRandomMagic = false; //Switches the Random Magic Number on/off
extern int RandomMagicLower = 100000; //Sets the lower Magic Number boundry
extern int RandomMagicUpper = 200000; //Sets the upper Magic Number boundry
extern string DayFilter = "Select the days for Indo Run to trade";
extern bool Monday = true; // Selecting a day true/false will hold the EA off trading that day if no trades are open
extern bool Tuesday = true; // Overides day filter if trades are open (Basket)
extern bool Wednesday = true;
extern bool Thursday = true;
extern bool Friday = true; 
extern bool Saturday = true; 
extern bool Sunday = true;
extern bool TradeMonthEnd = true;
extern int MonthEndOffset = 3; //Offset to define the last trading day of a month (31 - Offset)
extern bool TradeFirstDayOffMonth = true; 
extern int DayOffset = 0; //Per default the Offset is 0 thus the 1st of a month is filtered
extern double GMTOffset = 1;
extern string HourFilter = "Select the Trading Hours or set to 24h";
extern bool Trading24h = true; 
extern int HoursFrom = 10; //Start Trading Hour Broker Time (Standad Settings GMT), the EA overides time if trades are open (Basket)
extern int HoursTo = 6; //Stop Trading Hour Broker Time Standard Setting GMT), the EA overides time if trades are open (Basket)
extern string Session_Filter = "Only in 24 Mode: Use both Session Filter together only!";
extern string Session_Filter1 = "Filters per default London Session (GMT)!";
extern bool SessionFilter1 = false; //Session Filter Settings in GMT / Use only in combination with SessionFilter 2
extern double SF1Hour_On = 5;
extern double SF1MinuteOn =45;
extern double SF1Hour_Off = 9;
extern double SF1MinuteOff = 0;
extern string Session_Filter2 = "Filters per default NY Session (GMT)!";
extern bool SessionFilter2 = false; //Session Filter Settings in GMT / Use only in combination with SessionFilter 1
extern double SF2Hour_On = 11;
extern double SF2MinuteOn =45;
extern double SF2Hour_Off = 17;
extern double SF2MinuteOff = 30;
extern bool AvoidNews = false; //Switches News Filter on/off
extern bool High_Impact=true;
extern int MinsUntilNextHighNews=180;
extern int MinsSincePrevHighNews=180;
extern bool Medium_Impact=true;
extern int MinsUntilNextMediumNews=90;
extern int MinsSincePrevMediumNews=90;
extern bool Low_Impact=false;
extern int MinsUntilNextLowNews=60;
extern int MinsSincePrevLowNews=60;
extern string Info5 = "Main Order Setup";
extern string PAO = " ProfitAllOrder will calculate automatically while the Lotssize is changed!";
extern double ProfitAllOrder = 15; //Cumulated Sell Order Take Profit in Account Currency based on 0.1 Lotsize 
extern bool FixedProfitAO = false; // If true, ProfitAllOrder amount set will be used only/Have to be set to tru while using Martingale!!!
extern bool ADVProfitMode = false; //Advanced Profit Modue which reduces the Profit Target on increasing opened Orders in the Basket
extern bool ATRProfitMode = false; //This Mode will take the Profit (>=ATR Profit) while the ATR is Filtering on open trades
extern double ATRProfit = 4; //This value does not adjusts automatically while the Lotsize is changed.
extern bool ADVATRProfit = false; //Overrides ATRProfit set and will apply ProfitAllOrders/ADVATRProfitx
extern double ADVATRProfitx = 3; //ProfitAllOrders/ADVATRProfitx
extern bool DynamicProfit = false; //If true, when ProfitAllOrder limit is reached the profit will trail by the defined step
extern double DynamicProfitStep = 1; //Inc of the ProfitAllOrder value 
int OpenOrdersLimit = 0; //Limits the number of open orders
extern bool DeletePOMode = true; // Bug: if false Sell Open Orders are not registered and counted
extern int SingleOrderSL = 0; //Stop Loss of each individual Order in Pips
extern int SingleOrderTP = 0; //Take Profit of each individual Order in Pips
extern bool ADVOffsetMode = false; //If false Pending Orders are placed on the current ASK/Bid Price
extern bool ATRStepOn = false; //If true the step value/price offset is linked to the current ATRPips value
extern bool ATRPipsToStep = false; //If true the ATRPips value will be used as Step/Price Offset
extern int PriceOffset = -16; //Step/Gap in Pips where Pending Order is placed to current price basic
extern bool StepFactorOn = false; //Factor which increases the Step per Order
extern int StepFactor = 10; //ProfitOffset*(OrderCounter/StepFactor+1)
extern int PriceOffset1 = 0; ////Step/PriceOffset added in Low Range ATR while ATRStepOn is set to true
extern int PriceOffset2 = -1; //Step/PriceOffset added in Mid Range ATR while ATRStepOn is set to true
extern int PriceOffset3 = -2; //Step/PriceOffset added in High Range ATR while ATRStepOn is set to true
extern double Lot = 0.1; //Single Order Lotsize / If FixedProfitAO = false Profit Target will be calculated automatically to the Profit Target set on 0.1 base (0.1 Lot = 15$ standard setting)
extern int Slippage=4; //Price Change in Pips allowed during Order Processing
extern string AutomaticLots1 = "Automatic Lotsize based on Account Balance!";
extern string AutomaticLots2 = "ProfitAllOrder gets adjusted automatically!";
extern bool AutoLotSize = false; //Automatic Lotsize based on Account Balance (Account Balance/300*MinLots)
extern double Risk = 2; //"Risk Factor on which the Lotsize increases
extern double MinLots = 0.01; //minimum Lotsize only used when Autolotsize is activated
extern bool KLotSize = false; // if true Lot Size will double every 10K+
extern bool DoubleLots = false; //Doubles the Lotsize in the Asian Session
extern bool Martingale = false; //Need to set FixedProfitAO=true!!!!
extern double LotFactor = 1.4; //Increasing Factor of Martingale Lotsize 
extern double MartingaleMaxLot = 0.5; //Limit of Losize of Martingale!!!
extern bool DoubleBasket = false; //if true the EA will trade with two Order Baskets (First Basket opens Trade second Basket comes online in addition)
extern bool TripleBasket = false; //if true the EA will trade with three Order Baskets (Second Basket opens Trade third Basket comes online in addition)
extern string Timed_Stop = "Stops Trading and closes all trades at selected time of a day!";
extern bool TimedStop = false; //Switches Time to close all open orders once a day on/off
extern int StopHour = 14; //Timed Stop Hour GMT
extern int StopMinute = 0; //Timed Stop Minute 
extern string ATR_Filter = "ATR Filter selection and setup!";
extern bool ATROn = true; //Switches ATR Filter on/off
extern bool FilterMod = false;
extern int ATR_Period1 = 7;
extern int ATR_Period2 = 7;
extern int ATR_Period3 = 7;
extern int ATRMode1 = 0;
extern int ATRMode2 = 0;
extern int ATRMode3 = 0;
extern double ATRShift1 = 0.0;
extern double ATRShift2 = 3.0;
extern double ATRShift3 = 5.0;
extern double ATRUpLimit1 = 13.0;
extern double ATRDnLimit1 = 7.0;
extern double ATRUpLimit2 = 21.0; 
extern double ATRDnLimit2 = 16.0;
extern double ATRUpLimit3 = 26.0;
extern double ATRDnLimit3 = 24.0;
extern bool CCIFilterOn = false;
extern double CCIPeriod1 = 14;
extern double CCIPeriod2 = 14;
extern double CCIShift1 = 0;
extern double CCIShift2 = 5;
extern double CCICurrentUp = 65;
extern double CCICurrentDown = -65;
extern double CCIPreviousUp = 75;
extern double CCIPreviousDown = -75;
extern bool MomentumFilterOn = false;
extern double MomentumPeriod1 = 3;
extern double MomentumPeriod2 = 3;
extern double MomentumShift1 = 0;
extern double MomentumShift2 = 3;
extern double MomentumCurrentUp = 100.1;
extern double MomentumCurrentDown = 99.9;
extern double MomentumPreviousUp = 100.2;
extern double MomentumPreviousDown = 99.8;
extern bool RSIFilterOn = false;
extern double RSIPeriod1 = 3;
extern double RSIPeriod2 = 3;
extern double RSIShift1 = 0;
extern double RSIShift2 = 3;
extern double RSICurrentUp = 51;
extern double RSICurrentDown = 49;
extern double RSIPreviousUp = 53;
extern double RSIPreviousDown = 47;
extern bool DeletePOATR = true; // Switch to delete all pending orders while ATR is active
extern bool DeleteOrderATR = false; // Switch to close all open orders while ATR is active (disabled due to current strategy set
extern bool ApplyTradeContext=true; //Activates TradeContext is busy Alert 
extern bool TradeContextEmail=false; //Send email if Trade Context is busy
extern string Stop_Out = "Closes all trades in basket on cummulated Profit/Loss!";
extern bool LossStopOutOn = false; //Switches Cumulated Loss Stop Out On on/off
extern int LossStopOut = -5000; // Cumulated Loss in Account Currency which will close all open orders
extern string CAT = "!!!Closes all trades in basket when true!!!";
extern bool CloseAllTrades = false; // Closes all open orders

 

One question expat: I'd like to test placing a stop using SingleOrderSL. What value would you advise I use here?

 

Thanks,

 

b.

Link to comment
Share on other sites

I remember you saying a while ago that you were using, or used at some point, a SL for each trade, that's why I ask. I'm looking for a way to not blow the entire account if one single basket goes wrong. Thanks anyway.

 

I gave it a bit more thought and might go a different way. I might try the LossStopOut feature instead but "spread the risk" using multiple pairs.

For example: 10k account, using 5 different pairs with aggressive settings and LossStopOut set to 2k on each pair. I might have a few pairs hit the stop regularly but hopefully the other pairs will make up for it.

It's just an idea but what's your opinion about this? What settings would you recommend for this type of set up?

 

Thanks,

 

b.

Link to comment
Share on other sites

I remember you saying a while ago that you were using, or used at some point, a SL for each trade, that's why I ask. I'm looking for a way to not blow the entire account if one single basket goes wrong. Thanks anyway.

 

I gave it a bit more thought and might go a different way. I might try the LossStopOut feature instead but "spread the risk" using multiple pairs.

For example: 10k account, using 5 different pairs with aggressive settings and LossStopOut set to 2k on each pair. I might have a few pairs hit the stop regularly but hopefully the other pairs will make up for it.

It's just an idea but what's your opinion about this? What settings would you recommend for this type of set up?

 

Thanks,

 

b.

Yeap, I am using in one setup 200 pips Sl, but thats very specific. On some I do run no SL at all and only NewsFilter on.

I will upload a new version shortly. This version does have something like a trailing stop downwards which might soften the takeout better than a SL or a LossStopOut. See how that adopts. Should fit as well better on Multipair.

 

Cheers

Link to comment
Share on other sites

I found here (forexfactory com/showthread.php?t=19293) a lot of different versions but none were greater then 20. Original author stopped to update it after v20 I think.

Hi all,

 

just saw that FFCAL is not taking the post news timeout after the 11am GMT news. Must be a FFCAL issue related to speeches. Megadroid N1 has the same issue. Same as on Friday... Thus be careful. Somebody got a FFCAL with a higher version number than 20? Or a working DAILFX News Indicator?

 

Cheers

Link to comment
Share on other sites

I found here (forexfactory com/showthread.php?t=19293) a lot of different versions but none were greater then 20. Original author stopped to update it after v20 I think.

 

Yeap, have changed to TSD News Filter already. Thanks to odrisb's support.

 

TSD works fine, however my favorite would be to get it on DailyFX.

 

Thus, a working DailyFX News Indicator is the key.

 

Cheers

Link to comment
Share on other sites

sorry i'm a new to traders world.. just wanna ask do i have to set random magic number to each EA that i'm using to chart cause i run 4-5 chart with this EA in single platform.. can we mix the EA with other EA in 1 platform and run same pair?

 

Yes you can run the EA on the same pair in one MT4 instance. For simplicity dont use magic random number, just set a different magic number on each chart manually.

 

If you want to run random magic you need to make sure that the number range doesn't overlap. Use manual its easier and safer.

 

Cheers

Link to comment
Share on other sites

Below is Indo Run Backtest 2010 till mid Sept with ATR & Envelopes. I have filtered some major news (NFP) and end/first of a month. Will up the setfile shortly. DD is 7.39% on Single Basket and 0.1Lot on a 10k base. Will make some runs in other combinations and ramping up the game a bit.

 

Cheers

 

http://img832.imageshack.us/img832/2779/strategytester.gif

 

Mismatched charts errors 0

 

Initial deposit 10000.00

Total net profit 4500.80 Gross profit 8086.30 Gross loss -3585.50

Profit factor 2.26 Expected payoff 6.92

Absolute drawdown 63.80 Maximal drawdown 815.40 (7.39%) Relative drawdown 7.39% (815.40)

 

Total trades 650 Short positions (won %) 277 (66.43%) Long positions (won %) 373 (64.88%)

Profit trades (% of total) 426 (65.54%) Loss trades (% of total) 224 (34.46%)

Largest profit trade 84.20 loss trade -90.70

Average profit trade 18.98 loss trade -16.01

Maximum consecutive wins (profit in money) 9 (270.80) consecutive losses (loss in money) 5 (-193.70)

Maximal consecutive profit (count of wins) 270.80 (9) consecutive loss (count of losses) -223.00 (3)

Average consecutive wins 3 consecutive losses 2

Link to comment
Share on other sites

First post updated with Indo Run 1.5 and Setfile as per my prior post.

 

Major Changes are:

 

- FFCAL based News Filter has been replaced with TSD News Filter. Just set your GMT Offset correct in Indo Run and select the currencies/news to be filtered, other setting remains. (Thanks to odrisb for supporting)

 

- Envelopes filter appears to drive well but requires more testing. The Setfile posted was run 2010 thus there might be gaps prior.

 

- Option to filter days not to trade over major news events (NFP's) (e.g. Monday after NFP can be selected not to trade as a News Filter won't cope)

 

- Breakeven and Trailing Profit (Stop to negative Profit)from a Certain Draw Down Point onwards shall give a softer stopout than SL or StopOut

 

Cheers

Edited by expat1967
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.




×
×
  • Create New...