Spezifikation
#define ExtBotName "AK-47 Scalper EA" //Bot Name #define Version "1.00" //--- input parameters extern string EASettings = "---------------------------------------------"; //-------- <EA Settings> -------- input int InpMagicNumber = 124656; //Magic Number extern string TradingSettings = "---------------------------------------------"; //-------- <Trading Settings> -------- input double Inpuser_lot = 0.01; //Lots input double InpSL_Pips = 3.5; //Stoploss (in Pips) input double InpMax_spread = 0.5; //Maximum allowed spread (in Pips) (0 = floating) extern string MoneySettings = "---------------------------------------------"; //-------- <Money Settings> -------- input bool isVolume_Percent = true; //Allow Volume Percent input double InpRisk = 3; //Risk Percentage of Balance (%) input string TimeSettings = "---------------------------------------------"; //-------- <Trading Time Settings> -------- input bool InpTimeFilter = true; //Trading Time Filter input int InpStartHour = 2; //Start Hour input int InpStartMinute = 30; //Start Minute input int InpEndHour = 21; //End Hour input int InpEndMinute = 0; //End Minute
2. local variables initialization
//--- Variables int Pips2Points; // slippage 3 pips 3=points 30=points double Pips2Double; // Stoploss 15 pips 0.015 0.0150 int InpMax_slippage = 3; // Maximum slippage allow_Pips. bool isOrder = false; // just open 1 order int slippage; string strComment = "";
3. Main Code
a/ Expert initialization function
int OnInit() { //--- //3 or 5 digits detection //Pip and point if (Digits % 2 == 1) { Pips2Double = _Point*10; Pips2Points = 10; slippage = 10* InpMax_slippage; } else { Pips2Double = _Point; Pips2Points = 1; slippage = InpMax_slippage; } //--- return(INIT_SUCCEEDED); }
b/ Expert tick function
void OnTick() { //--- if(IsTradeAllowed() == false) { Comment("AK-47 EA\nTrade not allowed."); return; } MqlDateTime structTime; TimeCurrent(structTime); structTime.sec = 0; //Set starting time structTime.hour = InpStartHour; structTime.min = InpStartMinute; datetime timeStart = StructToTime(structTime); //Set Ending time structTime.hour = InpEndHour; structTime.min = InpEndMinute; datetime timeEnd = StructToTime(structTime); double acSpread = MarketInfo(Symbol(), MODE_SPREAD); StopLevel = MarketInfo(Symbol(), MODE_STOPLEVEL); strComment = "\n" + ExtBotName + " - v." + (string)Version; strComment += "\nGMT time = " + TimeToString(TimeGMT(),TIME_DATE|TIME_SECONDS); strComment += "\nTrading time = [" + (string)InpStartHour + "h" + (string)InpStartMinute + " --> " + (string)InpEndHour + "h" + (string)InpEndMinute + "]"; strComment += "\nCurrent Spread = " + (string)acSpread + " Points"; strComment += "\nCurrent stoplevel = " + (string)StopLevel + " Points"; Comment(strComment); //Update Values UpdateOrders(); TrailingStop(); //Check Trading time if(InpTimeFilter) { if(TimeCurrent() >= timeStart && TimeCurrent() < timeEnd) { if(!isOrder) OpenOrder(); } } else { if(!isOrder) OpenOrder(); } }
3.1 Calculate signal in order to send orders
void OpenOrder(){ //int OrdType = OP_SELL;//-1; double TP = 0; double SL = 0; string comment = ExtBotName; //Calculate Lots double lot1 = CalculateVolume(); //if(OrdType == OP_SELL){ double OpenPrice = NormalizeDouble(Bid - (StopLevel * _Point) - (InpSL_Pips/2) * Pips2Double, Digits); SL = NormalizeDouble(Ask + StopLevel * _Point + InpSL_Pips/2 * Pips2Double, Digits); if(CheckSpreadAllow()) //Check Spread { if(!OrderSend(_Symbol, OP_SELLSTOP, lot1, OpenPrice, slippage, SL, TP, comment, InpMagicNumber, 0, clrRed)) Print(__FUNCTION__,"--> OrderSend error ",GetLastError()); } //} }
3.2 Calculate Volume
double CalculateVolume() { double LotSize = 0; if(isVolume_Percent == false) { LotSize = Inpuser_lot; } else { LotSize = (InpRisk) * AccountFreeMargin(); LotSize = LotSize /100000; double n = MathFloor(LotSize/Inpuser_lot); //Comment((string)n); LotSize = n * Inpuser_lot; if(LotSize < Inpuser_lot) LotSize = Inpuser_lot; if(LotSize > MarketInfo(Symbol(),MODE_MAXLOT)) LotSize = MarketInfo(Symbol(),MODE_MAXLOT); if(LotSize < MarketInfo(Symbol(),MODE_MINLOT)) LotSize = MarketInfo(Symbol(),MODE_MINLOT); } return(LotSize); }
3.3 EA has function "trailing Stop", SL will change every time price change (down)
void TrailingStop() { for(int i = OrdersTotal() - 1; i >= 0; i--) { if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) { if((OrderMagicNumber() == InpMagicNumber) && (OrderSymbol() == Symbol())) //_Symbol)) { //For Sell Order if(OrderType() == OP_SELL) { //--Calculate SL when price changed double SL_in_Pip = NormalizeDouble(OrderStopLoss() - (StopLevel * _Point) - Ask, Digits) / Pips2Double; if(SL_in_Pip > InpSL_Pips){ double newSL = NormalizeDouble(Ask + (StopLevel * _Point) + InpSL_Pips * Pips2Double, Digits); if(!OrderModify(OrderTicket(), OrderOpenPrice(), newSL, OrderTakeProfit(), 0, clrRed)) { Print(__FUNCTION__,"--> OrderModify error ",GetLastError()); continue; } } } //For SellStop Order else if(OrderType() == OP_SELLSTOP) { double SL_in_Pip = NormalizeDouble(OrderStopLoss() - (StopLevel * _Point) - Ask, Digits) / Pips2Double; if(SL_in_Pip < InpSL_Pips/2){ double newOP = NormalizeDouble(Bid - (StopLevel * _Point) - (InpSL_Pips/2) * Pips2Double, Digits); double newSL = NormalizeDouble(Ask + (StopLevel * _Point) + (InpSL_Pips/2) * Pips2Double, Digits); if(!OrderModify(OrderTicket(), newOP, newSL, OrderTakeProfit(), 0, clrRed)) { Print(__FUNCTION__,"--> Modify PendingOrder error!", GetLastError()); continue; } } } } } } }
Bewerbungen
1
Bewertung
Projekte
30
57%
Schlichtung
0
Frist nicht eingehalten
1
3%
Frei
2
Bewertung
Projekte
105
60%
Schlichtung
0
Frist nicht eingehalten
0
Frei
3
Bewertung
Projekte
36
25%
Schlichtung
1
0%
/
0%
Frist nicht eingehalten
4
11%
Arbeitet
4
Bewertung
Projekte
585
38%
Schlichtung
2
100%
/
0%
Frist nicht eingehalten
1
0%
Frei
Veröffentlicht: 9 Beispiele
5
Bewertung
Projekte
11
0%
Schlichtung
4
0%
/
100%
Frist nicht eingehalten
2
18%
Arbeitet
6
Bewertung
Projekte
258
61%
Schlichtung
4
50%
/
25%
Frist nicht eingehalten
10
4%
Frei
7
Bewertung
Projekte
211
19%
Schlichtung
19
42%
/
16%
Frist nicht eingehalten
0
Arbeitet
8
Bewertung
Projekte
35
20%
Schlichtung
4
50%
/
25%
Frist nicht eingehalten
0
Frei
Veröffentlicht: 1 Beispiel
9
Bewertung
Projekte
0
0%
Schlichtung
0
Frist nicht eingehalten
0
Frei
10
Bewertung
Projekte
242
31%
Schlichtung
0
Frist nicht eingehalten
3
1%
Frei
Veröffentlicht: 2 Beispiele
11
Bewertung
Projekte
613
34%
Schlichtung
34
38%
/
47%
Frist nicht eingehalten
9
1%
Überlastet
12
Bewertung
Projekte
232
73%
Schlichtung
6
100%
/
0%
Frist nicht eingehalten
1
0%
Frei
Ähnliche Aufträge
Shybossforex robot
30 - 50 USD
Shybossforex strategy full data continuation and reversal.The strategy of continuation and reversal is trading technique 5hat involves two different approach to trade execution.The continuation and reversal is based on assumption that current market trend will continuation in future and therefore inloves taking position in same direction as prevailing trending,I will wait for the pullback and continuation trade with
Hi, I’d like a bot to be made for Ninja Trader 8 to place and execute the trades but I want to use MT4 for the analysis and trade entry criteria. MT4 has different price data feeds so this strategy seems to work better when I use MT4 for the analysis to determine the entry. I’ve attached the strategy and rules and settings I want for the bot. Let me know if you think it will work to automate this strategy and do it
I need a Expert Advisor based on 1H timeframe to open positions once fib levels are broken. 2 positions opened per trigger. First position closes at first TP level and the remaining open position moves stop loss to break even. Only one break out trigger allowed per day. Fib must be auto drawn in by EA according to time frames given. Time frames need to be adjustable too. 3 Moving averages needed. Two smaller MA for
I need a very powerful profit harvesting tools with a comprehensive account protection system, with Candlestick dependant expert advisors (EA) on MQL4/5 plartform.need a developer with a Long time experience
Looking for a Prob Firm EA with Source Code
30 - 200 USD
I am looking for a fully functional Expert Advisor that is optimized for Prop Firm Challenges (e.g. FTMO, etc.). Requirements: Stable algorithm designed to comply with typical challenge rules (drawdown limits, max daily loss, etc.) Strategy with strong risk management and consistent profitability Fully commented source code (MQ5/MQ4) Transparent performance proof (backtests or live results) Optional Features
Trading Robot development
30 - 200 USD
I am looking for an experienced MQL5 developer to build a trading robot based on my personal strategy. The EA should be coded professionally, with efficiency, accuracy, and risk management in mind. Strategy Overview: The strategy is structure-based with Fibonacci retracement (0.618–0.79) as the primary Point of Interest (POI). Secondary confluences include order blocks, support/resistance, psychological levels, and
I am looking for an experienced MetaTrader 5 (MT5) developer to create a custom Retail Sentiment Index Indicator. The indicator will pull real-time sentiment data from multiple brokers via their APIs, calculate net sentiment (long – short), and plot each feed as a moving average line directly over the candlestick chart. The indicator must also display a weighted average line (thicker) when more than one broker feed
Automate my trading
30 - 100 USD
I have a trading strategy that I would like to automate. It uses Moving average, CCI and RSI. I need and experienced developer to build me an EA out of that. Kindly let me know your experience as this project is huge. Thanks
THE BOT
10000+ USD
📌 Trading Bot Requirements & Functional Description 1. Core Objective The bot is designed to automate trading on MT5 using ICT-based and price-action strategies with dynamic trade management. It should integrate signal generation , risk management , and execution , while allowing flexibility for future strategy adjustments. 2. Technical Requirements Platform : Python-based, connected to MetaTrader 5 (MT5) for order
I want a bot that reads signals from my Telegram channel and auto-executes those trades on my Pocket Option account. 1. Direction mode hedge_both: open BUY (CALL) and SELL (PUT) at the same time (typically split the amount 50/50 per side). signal_only: open only the direction specified by the signal (CALL or PUT). 2. Respect signal direction When direction_mode = signal_only, a CALL signal opens a CALL; a PUT signal
Projektdetails
Budget
30 - 200 USD
Für die Entwickler
27
- 180
USD
Ausführungsfristen
von 1 bis 100 Tag(e)