RSIOMA EA v1 - Scalper implementation of RSIOMA_v2 indicator - page 2 12 New comment linxiang 2010.01.04 04:57 #11 It sounds interesting Thanks for your post. It seems that the EA is promising. Best Mathias Halen 2010.07.20 09:16 #12 RSI Crosses MA EA help... 'm working on a EA thats suppose to buy or sell when crossing the MA line. I also wannt the StopLoss to be 75% of the ATR value. //+------------------------------------------------------------------+ //| My_First_EA.mq4 | //| | //| | //+------------------------------------------------------------------+ #property copyright "XXX" #property link "XXX" //---- input parameters extern int TakeProfit=5; extern double Lots=0.1; extern double TrailingStop=70; extern int RSIPeriod=8; extern int MA_Period=8; extern int AtrPeriod=20; int StopLoss.1; //+------------------------------------------------------------------+ //| expert deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int Crossed(double line1, double line2) { static int last_direction = 0; static int current_direction = 0; if(line1>line2) current_direction = 1; //up if(line1<line2) current_direction = 2; //down 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 shortEma, shortRSI; if(Bars<100) { Print("bars less than 100"); return(0); } if(TakeProfit<10) { Print("TakeProfit less than 10"); return(0); // check TakeProfit } shortEma = iMA(NULL, 0, 8, 0, MODE_EMA, PRICE_CLOSE, 0); shortRSI = iRSI(NULL, 0, 8, PRICE_CLOSE, 0); int isCrossed = Crossed(shortEma, shortRSI); 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); } double d_ATR = NormalizeDouble(iATR(PERIOD_D1, AtrPeriod, 1, 0), 2); // Get the Daily range int i_ATR = d_ATR*100; // Turn it into (full) pips StopLoss.1 = i_ATR*075; 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; cnt<total; cnt++) { OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES); if(OrderType()<=OP_SELL && OrderSymbol()==Symbol()) { if(OrderType()==OP_BUY) // long position is opened { // should it be closed? if(isCrossed == 2) { OrderClose(OrderTicket(), OrderLots(), Bid, 3, Violet); // close position return(0); // exit } // check for trailing stop if(TrailingStop>0) { if(Bid-OrderOpenPrice()>Point*TrailingStop) { if(OrderStopLoss()<Bid-Point*TrailingStop) { OrderModify(OrderTicket(), OrderOpenPrice(), Bid- Point*TrailingStop, OrderTakeProfit(), 0, Green); return(0); } } } } else // go to short position { // should it be closed? if(isCrossed == 1) { OrderClose(OrderTicket(), OrderLots(), Ask, 3, Violet); // close position return(0); // exit } // check for trailing stop if(TrailingStop>0) { if((OrderOpenPrice()-Ask)>(Point*TrailingStop)) { if((OrderStopLoss()>(Ask+Point*TrailingStop)) || (OrderStopLoss()==0)) { OrderModify(OrderTicket(), OrderOpenPrice(), Ask+Point*TrailingStop, OrderTakeProfit(), 0, Red); return(0); } } } } } } return(0); } //+------------------------------------------------------------------+ Depth of Market - Parabolic SAR - Trend Parabolic SAR - Trend 12 New comment
It sounds interesting
Thanks for your post. It seems that the EA is promising.
Best
RSI Crosses MA EA help...
'm working on a EA thats suppose to buy or sell when crossing the MA line.
I also wannt the StopLoss to be 75% of the ATR value.