Specification
#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; } } } } } } }
Responded
1
Rating
Projects
30
57%
Arbitration
0
Overdue
1
3%
Free
2
Rating
Projects
105
60%
Arbitration
0
Overdue
0
Free
3
Rating
Projects
36
25%
Arbitration
1
0%
/
0%
Overdue
4
11%
Working
4
Rating
Projects
584
38%
Arbitration
2
100%
/
0%
Overdue
1
0%
Working
Published: 9 codes
5
Rating
Projects
11
0%
Arbitration
4
0%
/
100%
Overdue
2
18%
Working
6
Rating
Projects
258
61%
Arbitration
4
50%
/
25%
Overdue
10
4%
Free
7
Rating
Projects
211
19%
Arbitration
19
42%
/
16%
Overdue
0
Working
8
Rating
Projects
35
20%
Arbitration
4
50%
/
25%
Overdue
0
Free
Published: 1 code
9
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
10
Rating
Projects
242
31%
Arbitration
0
Overdue
3
1%
Free
Published: 2 codes
11
Rating
Projects
613
34%
Arbitration
34
38%
/
47%
Overdue
9
1%
Busy
12
Rating
Projects
232
73%
Arbitration
6
100%
/
0%
Overdue
1
0%
Free
Similar orders
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
Customizable Forex Trading Bot for MetaTrader 4 & 5 Project Overview I am a professional zone‑to‑zone trader seeking an experienced developer to build a fully customizable forex trading bot (Expert Advisor) that operates on both MetaTrader 4 and MetaTrader 5. The bot must execute trades according to detailed instructions that I will provide once an ambitious and suitable applicant is selected. It should allow easy
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 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
I want to convert ninjatrader to pine script
30 - 90 USD
Do you convert Ninja Trader to pine script take a look this script and tell me if you are able to convert into pine script or not I just need exact Match Conversion: The TradingView version must replicate the NinjaTrader indicator exactly — both visually and functionally here is everything i have - file i like to covert into Tradingview is -- MSW5_VBM.cs , review it and let me know
Ai spike Indicator
30 - 35 USD
Create an Ai based indicator that is able to identify sudden market movements known as spikes on boom and crash indices on the deriv market. The Ai should incorporate these strategies for better precision on getting signals, these strategies include support and resistance on 4 hour time frame SMC, CRT, ICT, Strategies volume trend, volatility pure price action tick velocity, momentum and key points on fibbonacci tool
I would like you to create an expert advisor or robot based on a closed source Trading View indicator ‘Stop Hunt by _Nephew_Sam’. You have to first check this indicator out and be sure you can replicate the source code’s logic before you apply for this gig. If you read to this point, include closed source in your reply to this post
Project Description: I am looking for an experienced developer to create an Expert Advisor (EA) compatible with both MT4 and MT5 with the following functionalities: 1. Capital and Position Sizing Management: Automatically calculate and determine the appropriate trade size based on account balance and predefined risk parameters. Enforce strict capital management rules to prevent excessive exposure and control overall
Project Description: We are looking for an experienced developer to create a plugin named "Anti-Scalper" , designed to prevent scalping activities by restricting trading actions within a specified time window. The plugin should be secure, efficient, and offer real-time configurability via a web-based GUI. Core Features: Configurable Time Range Restriction Admin should be able to set a configurable time range (e.g
Development of a trading other
35+ USD
Here are the requirements for a potential developer: 1. *Task*: Create a detailed specification for image editing tasks. 2. *Key Features*: - Describe the type of image (e.g., photo, graphic). - Specify edits (add, remove, change elements). - Define desired output format and resolution. 3. *Deliverables*: - A clear, concise document outlining the task. - Estimated complexity and cost assessment. -
Project information
Budget
30 - 200 USD
For the developer
27
- 180
USD
Deadline
from 1 to 100 day(s)