De Multi-valuta Nachtscalper is een slimme tool die tot middernacht handelt binnen een smalle range, gebaseerd op de Bollinger Bands indicator. Dit biedt kansen voor scalping in de nachtelijke uren!
BBHandle=iBands(symb,0,per,0,dev,0); CopyBuffer(BBHandle,1,0,1,up); CopyBuffer(BBHandle,2,0,1,dn); double r=up[0]-dn[0];
Een positie wordt geopend na het tijdstip dat is opgegeven in Start, en alleen als er geen open posities zijn voor dat symbool.
if(CountTrades(symb)<1 && TimeCurrent()>StringToTime(s))
Kopen? Dat doe je als de prijs lager is dan de onderste grens van de Bollinger Bands en de range kleiner is dan wat is ingesteld in de Razmah variabele.
if(Ask<dn[0] && r<razmah*_Point) trade.PositionOpen(symb,0,Lot,Ask,Ask-stop*_Point,Ask+take*_Point);
Verkopen? Dat gebeurt als de prijs boven de bovenste grens van de Bollinger Bands ligt en de range kleiner is dan wat in de Razmah variabele staat.
if(Bid>up[0] && r<razmah*_Point) trade.PositionOpen(symb,1,Lot,Bid,Bid+stop*_Point,Bid-take*_Point);
Posities worden gesloten door stop losses of geforceerd gesloten na middernacht.
elseif(CountTrades(symb)>0 && TimeCurrent()<StringToTime(s)) CloseAll(symb);
De handelsoperaties worden uitgevoerd via de SymbolTrade functie en maakt gebruik van de СTrade klasse:
void SymbolTrade(string symb,int stop,int take,int per,double dev,double razmah,int start) { string s=(string)start+":00"; doubleAsk=SymbolInfoDouble(symb,SYMBOL_ASK); doubleBid=SymbolInfoDouble(symb,SYMBOL_BID); BBHandle=iBands(symb,0,per,0,dev,0); CopyBuffer(BBHandle,1,0,1,up); CopyBuffer(BBHandle,2,0,1,dn); double r=up[0]-dn[0]; if(CountTrades(symb)<1 && TimeCurrent()>StringToTime(s)) { if(Ask<dn[0] && r<razmah*_Point) trade.PositionOpen(symb,0,Lot,Ask,Ask-stop*_Point,Ask+take*_Point); if(Bid>up[0] && r<razmah*_Point) trade.PositionOpen(symb,1,Lot,Bid,Bid+stop*_Point,Bid-take*_Point); } elseif(CountTrades(symb)>0 && TimeCurrent()<StringToTime(s)) CloseAll(symb); }
Handelsoperaties worden uitgevoerd bij de nieuwe bar.
if(bars!=Bars(NULL,0)) { if(Symbol1!="") SymbolTrade(Symbol1,StopLoss1,TakeProfit1,BBPeriod1,BBDev1,Razmah1,Start1); if(Symbol2!="") SymbolTrade(Symbol2,StopLoss2,TakeProfit2,BBPeriod2,BBDev2,Razmah2,Start2); if(Symbol3!="") SymbolTrade(Symbol3,StopLoss3,TakeProfit3,BBPeriod3,BBDev3,Razmah3,Start3); ... } bars=Bars(NULL,0);
Instellingen:
inputstring Symbol1 = "USDCAD"; // Naam van Symbol1inputint StopLoss1 = 370; // StopLoss1inputint TakeProfit1 = 20; // TakeProfit1inputint BBPeriod1 = 40; // Bands Period1inputdouble BBDev1 = 1; // Bands Deviation1inputdouble Razmah1 = 450; // Bands Deviation1 in Punteninputint Start1 = 19; // Start Tijd1inputstring Symbol2 = "GBPUSD"; // Naam van Symbol2inputint StopLoss2 = 450; // StopLoss2inputint TakeProfit2 = 80; // TakeProfit2inputint BBPeriod2 = 8; // Bands Period2inputdouble BBDev2 = 1; // Bands Deviation2inputdouble Razmah2 = 200; // Bands Deviation2 in Punteninputint Start2 = 20; // Start Tijd2inputstring Symbol3 = "NZDUSD"; // Naam van Symbol3inputint StopLoss3 = 410; // StopLoss3inputint TakeProfit3 = 40; // TakeProfit3inputint BBPeriod3 = 4; // Bands Period3inputdouble BBDev3 = 1.2; // Bands Deviation3inputdouble Razmah3 = 450; // Bands Deviation3 in Punteninputint Start3 = 19; // Start Tijd3inputstring Symbol4 = ""; // Naam van Symbol4inputint StopLoss4 = 500; // StopLoss4inputint TakeProfit4 = 40; // TakeProfit4inputint BBPeriod4 = 24; // Bands Period4inputdouble BBDev4 = 1; // Bands Deviation4inputdouble Razmah4 = 200; // Bands Deviation4 in Punteninputint Start4 = 20; // Start Tijd4inputstring Symbol5 = ""; // Naam van Symbol5inputint StopLoss5 = 500; // StopLoss5inputint TakeProfit5 = 40; // TakeProfit5inputint BBPeriod5 = 24; // Bands Period5inputdouble BBDev5 = 1; // Bands Deviation5inputdouble Razmah5 = 200; // Bands Deviation5 in Punteninputint Start5 = 20; // Start Tijd5inputstring Symbol6 = ""; // Naam van Symbol6inputint StopLoss6 = 500; // StopLoss6inputint TakeProfit6 = 40; // TakeProfit6inputint BBPeriod6 = 24; // Bands Period6inputdouble BBDev6 = 1; // Bands Deviation6inputdouble Razmah6 = 200; // Bands Deviation6 in Punteninputint Start6 = 20; // Start Tijd6inputstring Symbol7 = ""; // Naam van Symbol7inputint StopLoss7 = 500; // StopLoss7inputint TakeProfit7 = 40; // TakeProfit7inputint BBPeriod7 = 24; // Bands Period7inputdouble BBDev7 = 1; // Bands Deviation7inputdouble Razmah7 = 200; // Bands Deviation7 in Punteninputint Start7 = 20; // Start Tijd7inputstring Symbol8 = ""; // Naam van Symbol8inputint StopLoss8 = 500; // StopLoss8inputint TakeProfit8 = 40; // TakeProfit8inputint BBPeriod8 = 24; // Bands Period8inputdouble BBDev8 = 1; // Bands Deviation8inputdouble Razmah8 = 200; // Bands Deviation8 in Punteninputint Start8 = 20; // Start Tijd8inputstring Symbol9 = ""; // Naam van Symbol9inputint StopLoss9 = 500; // StopLoss9inputint TakeProfit9 = 40 // TakeProfit9inputint BBPeriod9 = 24 // Bands Period9inputdouble BBDev9 = 1 // Bands Deviation9inputdouble Razmah9 = 200 // Bands Deviation9 in Punteninputint Start9 = 20 // Start Tijd9inputdouble Lot = 1 // Handelsvolume

Fig. 1. Het resultaat van de EA trading. EURUSD, H1

Fig. 2. Transacties van de EA in het journaal

Fig. 3. Resultaten van de EA trading en optimalisatie van 11.01.2016 tot 13.09.2016. USDCAD, GBPUSD, NZDUSD, H1
Tips:
- De EA is aan te raden als handelsassistent en voor het ontwikkelen van je eigen strategieën.

Reactie 0