1 registered members (AndrewAMD),
1,203
guests, and 9
spiders. |
Key:
Admin,
Global Mod,
Mod
|
|
|
Re: New Zorro version 1.14
[Re: jcl]
#428264
08/22/13 12:41
08/22/13 12:41
|
Joined: Aug 2013
Posts: 8
svenb
Newbie
|
Newbie
Joined: Aug 2013
Posts: 8
|
This is just based on the tutorials...
bool findTrade(var Price,bool IsShort) { for(open_trades){ if(TradeIsShort == IsShort and TradeAsset == "EUR/CHF") return false; } return true; }
function tradeEURCHF() { TimeFrame = 1; TimeExit = 1000; var Price; var Grid = optimize(10,10,100,10) * PIP; vars Prices = series(price()); vars Trend = series(LowPass(Prices,optimize(1000,500,2000))); var Current = priceClose(); var PriceHigh=optimize(1.22,1.2,1.26,0.01); var PriceLow =optimize(1.25,1.22,1.3,0.01); TakeProfit=Grid; if(Current > PriceHigh and findTrade(Price,true) and !peak(Trend)) enterShort(); if(Current < PriceLow and findTrade(Price,false) and !valley(Trend)) enterLong(); }
function tradeCounterTrend() { TimeFrame = 4; vars Price = series(price()); vars DomPeriod = series(DominantPeriod(Price,30)); var LowPeriod = LowPass(DomPeriod,500); vars HP = series(HighPass(Price,LowPeriod*optimize(1,0.5,2))); vars Signal = series(Fisher(HP,500)); var Threshold = optimize(1,0.9,1.5,0.1); Stop = optimize(5,3,7) * ATR(100); Trail = optimize(5,3,7) * ATR(100); TrailLock = 10; if(crossUnder(Signal,-Threshold)) reverseLong(1); else if(crossOver(Signal,Threshold)) reverseShort(1); }
function tradeTrend() { TimeFrame = 1; vars Price = series(price()); vars Trend = series(LowPass(Price,optimize(1000,500,2000)));
Stop = optimize(5,3,7) * ATR(100); Trail = optimize(5,3,7) * ATR(100); TrailLock = 10; if(valley(Trend)) { enterLong(); } else if(peak(Trend)) { enterShort(); }
}
function run() { set(PARAMETERS+FACTORS); set(LOGFILE); set(TICKS); set(HEDGING); BarPeriod = 60; LookBack = 2000; StartDate = 2002; NumWFOCycles = 5; Capital = 400; if(ReTrain) { UpdateDays = -1; SelectWFO = -1; } // portfolio loop while(asset(loop( "EUR/CHF", "EUR/USD", "USD/JPY", "USD/CHF", "GBP/USD"))) while(algo(loop("GRID","TRND","CNTR"))) { Margin = MarginCost + (Capital + 0.5 * ProfitClosed) * OptimalF;
if(Algo == "TRND" and Asset!= "EUR/CHF") tradeTrend(); else if(Algo == "CNTR" and Asset!= "EUR/CHF") tradeCounterTrend(); else if(Algo == "GRID" and Asset== "EUR/CHF") tradeEURCHF(); }
It also crashes when a trade closes because of the s/l.
|
|
|
Re: New Zorro version 1.14
[Re: svenb]
#428312
08/23/13 14:18
08/23/13 14:18
|
Joined: Apr 2013
Posts: 57
3DCat
Junior Member
|
Junior Member
Joined: Apr 2013
Posts: 57
|
Hi jcl! I narrowed my problem down: if i trade on demo/fxcm the following script:
function run()
{
BarPeriod=1;
StartDate=2013;
Verbose=14;
Weekend=1;
while(asset(loop("EUR/USD","AUD/USD","GBP/USD","GER30","NAS100","SPX500","UK100","US30","USD/CAD","USD/CHF","USD/JPY","USOil","XAG/USD","XAU/USD")))
{
Stop=TakeProfit=5*PIP;
if (NumOpenTotal<1)
{
if(random()>0) enterLong();
else enterShort();
}
}
}
Can you confirm it does nothing after a minute? Or ever:)? When setting Weekend to 2, or deleting the multiasset loop, it enters a trade normally after 1 minute. Am i doing something wrong or is it a bug?
|
|
|
|