//+--------------------------------------------------------------------------------------------------+ //| Hit and Run Scalper | //|This EA don't work on real accounts it is intended to make funny millionaires demo statements only| //| | //+--------------------------------------------------------------------------------------------------+ // extern double risk=90; extern int MagicNumber=3329838; extern int StopLoss=15; extern int TakeProfit=15; int i,cnt; int lotsize,AccNumber,Leverage; double old_bid=0,curr_bid=0,old_ask=0,curr_ask=0; double up_trend=0,down_trend=0,LotRisk,Balance; double MaxLots,LotStep,MinLots,lotsi; string AccountText,AccName; //+------------------------------------------------------------------+ int init() { AccNumber=AccountNumber(); Leverage=AccountLeverage(); AccName=AccountName(); MinLots=NormalizeDouble(MarketInfo(Symbol(),23),2); LotStep=NormalizeDouble(MarketInfo(Symbol(),24),2); MaxLots=NormalizeDouble(MarketInfo(Symbol(),25),2); lotsize=MarketInfo( Symbol(), MODE_LOTSIZE ); Lotsi(); return(0); } //+------------------------------------------------------------------+ int deinit() { return(0); } //+------------------------------------------------------------------+ int start() { curr_bid = NormalizeDouble(Bid,Digits); curr_ask = NormalizeDouble(Ask,Digits); up_trend = curr_bid - old_ask; down_trend = old_bid - curr_ask; if (up_trend > 0.0) i = OrderSend(Symbol(),OP_BUY,Lotsi(),old_ask,0,Ask-StopLoss*Point,Ask+TakeProfit*Point,"Hit&Run",MagicNumber,0,Blue); if (down_trend > 0.0) i = OrderSend(Symbol(),OP_SELL,Lotsi(),old_bid,0,Bid+StopLoss*Point,Bid-TakeProfit*Point,"Hit&Run",MagicNumber,0,Red); for (cnt = 0; cnt < OrdersTotal(); cnt++) { OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES); if ((OrderMagicNumber() == MagicNumber) && (OrderSymbol() == Symbol())) { if (OrderType() == OP_BUY) i = OrderClose(OrderTicket(),OrderLots(),Bid,100,Blue); if (OrderType() == OP_SELL) i = OrderClose(OrderTicket(),OrderLots(),Ask,100,Red); } } old_bid = curr_bid; old_ask = curr_ask; Comment("Hit and Run Scalper", "\nACCOUNT INFORMATION","\nAccount Name: ",AccName, "\nAccount Type: ",AccountText, "\nAccount Number: ",AccNumber, "\nLeverage: ",Leverage,":1", "\nMimimum Lot Size: ",MinLots, "\nMaximum Lot Size: ",MaxLots, "\nLot Size: $ ",lotsize, "\nLot Step: ",LotStep, "\nOrder Lot Size: ",lotsi, "\nOrder magic: ",MagicNumber, "\nPROFIT/LOSS STATS", "\nBalance: ",Balance, "\nEquity: ",AccountEquity(), "\nAccount Profit: ",AccountProfit(), "\n",Symbol()); return(0); } double Lotsi() { Balance=AccountBalance(); LotRisk=(risk*Leverage)/100; if (lotsize==100000) { if (LotStep==1) { lotsi=MathFloor(Balance*LotRisk/100000); } if (LotStep==0.1) { lotsi=MathFloor(Balance*LotRisk/10000)/10; } if (LotStep==0.01) { lotsi=MathFloor(Balance*LotRisk/1000)/100; } AccountText="Standard"; } else { if (LotStep==1) { lotsi=MathFloor(Balance*LotRisk/10000); } if (LotStep==0.1) { lotsi=MathFloor(Balance*LotRisk/1000)/10; } if (LotStep==0.01) { lotsi=MathFloor(Balance*LotRisk/100)/100; } AccountText="Mini"; } if (lotsi>MaxLots){ lotsi=MaxLots; } if (lotsi<MinLots){ lotsi=MinLots; } return(lotsi); }
Sample
Analysis
Market Information Used:
Indicator Curves created:
Indicators Used:
Custom Indicators Used:
Order Management characteristics:
It automatically opens orders when conditions are reached
Checks for the total of open orders
It Closes Orders by itself
Other Features: