- Antworten 70
- Aufrufe 8,6Tsd
- Erstellt
- Letzte Antwort
Top-Benutzer in diesem Thema
-
Zahnstocher 40 Beiträge
-
conglom-o 13 Beiträge
-
Mythos 10 Beiträge
-
FinGeR 3 Beiträge
Aktive Tage
Most Popular Posts
-
Die Funktionen init() und deinit() sind dafür uninteresannt. Die Funktion init() wird nur 1x aufgerufen, wenn man den EA in das Chartfenster läd. Die Funktion deinit() wird nur 1x aufgerufen,
-
Hi, ich schau mir gerade den EA an und schreib einfach mal was mir auffällt. Zuerst mal was "kosmetisches": Das ist zugegebenermaßen großteils Geschmackssache, aber manche Dinge erhöhen die Fehleran
-
hier ist noch der Backtest mit 1.2pip spread! long / short separat. TF 15min aufgrund der verwendeten Stochastic von 15min und 60min für den Exit. Viel Spass beim testen und so hoffe ich beim opti
//+------------------------------------------------------------------+ //| Zahn EA.mq4 | //| Copyright 2014, Zahnstocher | //| [url="http://www.tom-next.com"]http://www.tom-next.com[/url] | //+------------------------------------------------------------------+ #property copyright "Copyright 2014, Zahnstocher" #property link "[url="http://www.tom-next.com"]http://www.tom-next.com[/url]" #include //--- input parameters extern double TakeProfit=450.0; extern double Lots=0.01; extern double TrailingStop=150.0; //+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ int init() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| expert deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0); } int Crossed1 (double line1 , double line2) { static int last_direction = 0; static int current_direction = 0; if(line1>line2)current_direction = 1; // also buy if(line1 if(current_direction != last_direction) //changed { last_direction = current_direction; return (last_direction); } else { return (0); } } //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ int start() { //---- int cnt, ticket, total; double RSIOMA1, RSIOMA2; if(Bars<300) { Print("bars less than 300"); return(0); } if(TakeProfit<10) { Print("TakeProfit less than 10"); return(0); // check Takeprofit) } RSIOMA1= iCustom(NULL,0,"RSIZAHNOMAII",14,0,0); RSIOMA2= iCustom(NULL,0,"RSIZAHNOMAII",72,0,0); int isCrossed = Crossed1 (RSIOMA1,RSIOMA2); total = OrdersTotal(); if(total < 1) { if(isCrossed == 1) { ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,0,Ask+TakeProfit*Point,"My EA", 12345,0,Green); if(ticket>0) { if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice()); } else Print("Error opening BUY Order : ",GetLastError()); return(0); } if(isCrossed == 2) { ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,0,Bid-TakeProfit*Point,"My EA",12345,0,Red); if(ticket>0) { if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("Sell order opened : ",OrderOpenPrice()); } else Print("Error opening Sell Order : ",GetLastError()); return(0); } return(0); } for(cnt=0;cntAls Basis hab ich den Coders Guru EA mit den Moving Averages hergenommen.Heute Abend hab ich meinen gestern bearbeiten Custom Indicator eingefügt und den Code angepasst damit der mit 2 RSIOMA Kurven Arbeitet, siehe hier:
int cnt, ticket, total; double RSIOMA1, RSIOMA2; if(Bars<300) { Print("bars less than 300"); return(0); } if(TakeProfit<10) { Print("TakeProfit less than 10"); return(0); // check Takeprofit) } RSIOMA1= iCustom(NULL,0,"RSIZAHNOMAII",14,0,0); RSIOMA2= iCustom(NULL,0,"RSIZAHNOMAII",72,0,0); int isCrossed = Crossed1 (RSIOMA1,RSIOMA2);Die Logic ist die gleiche wie bei Coders Guru und natürlich weit weg von Profitabel, es ist auch noch nicht die Logic die ich später verwenden will, aber irgendwie muss man ja anfangen :)
Als nächstes möchte ich einen Candle Range Filter hinzufügen damit der EA nicht in z.B. einer 20pip Range zu Traden beginnt.
Aber keine Angst es werden viele Fragen folgen...
Grüße Zahnstocher*trailingstop)
;cnt++)
)current_direction>