Lavoro terminato
Tempo di esecuzione 1 giorno
Feedback del cliente
Good developer, recommend to anyone
Feedback del dipendente
Great customer. Clear description of requirement specification, fast communication. Looking forward to working with you again.
Thanks
Specifiche
This is a very straight forward request.
What I need is for the Bollinger Bands Buy / Sell functions below to perform the same as the indicator that is attached.
Delivery will comprise of a video / demonstration that the functions will work within an expert advisor / work in a similar manner to the indicator.
I've shared the following below:
- Photo of Indicator (ibbfill2)
- Functions Bollinger Bands Buy / Sell (these functions should match the conditions of the ibbfill2 indicator (i.e. when the Indicator shades Blue - that is the same as Bollinger Bands Buy / vice versa for Bollinger Bands Sell)
- iBandsMQL4 Function (because MT5 does not have shift / a proper way to indicate the MAIN / UPPER / LOWER Bound) I have created this function. Note if you have an alternative, feel free to replace this.
Photo of Indicator:

Functions - Bollinger Bands Buy & Sell:
bool BollingerBandsBuy(string symb) { bool state = false; double bid = SymbolInfoDouble(symb, SYMBOL_BID); double ask = SymbolInfoDouble(symb, SYMBOL_ASK); double close = iClose(symb, PERIOD_M5, 1); static bool conditionMet[12]; // Array to store conditionMet for each symbol string symbols_group[] = {symb1, symb2, symb3, symb4, symb5, symb6, symb7, symb9, symb10, symb11, symb12 }; int numSymbols = ArraySize(symbols_group); if (ArraySize(conditionMet) != numSymbols) { ArrayResize(conditionMet, numSymbols); } int symbolIndex = -1; for (int i = 0; i < numSymbols; i++) { if (symb == symbols_group[i]) { symbolIndex = i; break; } } if (symbolIndex == -1) { Print("Symbol not found in the group."); return false; } //------------------------------------------------------------------------ double iBandsMain1 = iBandsMQL4(symb, PERIOD_M15, 20, 2, 0, 1); double iBandsUpper1 = iBandsMQL4(symb, PERIOD_M15, 20, 2, 1, 1); double iBandsLower1 = iBandsMQL4(symb, PERIOD_M15, 20, 2, 2, 1); //------------------------------------------------------------------------ //---------------------- Buy Condition Initial Trigger ------------------- if (close > iBandsUpper1) { conditionMet[symbolIndex] = true; } else if (close < iBandsMain1) { conditionMet[symbolIndex] = false; } //---------------------- Condition Start --------------------------- if (conditionMet[symbolIndex] && ask > iBandsMain1) { state = true; } return state; } //-------------------------------------------------------------------------------------------------------------++ bool BollingerBandsSell(string symb) { bool state = false; double bid = SymbolInfoDouble(symb, SYMBOL_BID); double ask = SymbolInfoDouble(symb, SYMBOL_ASK); double close = iClose(symb, PERIOD_M5, 1); static bool conditionMet[12]; // Array to store conditionMet for each symbol string symbols_group[] = {symb1, symb2, symb3, symb4, symb5, symb6, symb7, symb9, symb10, symb11, symb12 }; int numSymbols = ArraySize(symbols_group); if (ArraySize(conditionMet) != numSymbols) { ArrayResize(conditionMet, numSymbols); } int symbolIndex = -1; for (int i = 0; i < numSymbols; i++) { if (symb == symbols_group[i]) { symbolIndex = i; break; } } if (symbolIndex == -1) { Print("Symbol not found in the group."); return false; } //------------------------------------------------------------------------ double iBandsMain1 = iBandsMQL4(symb, PERIOD_M15, 20, 2, 0, 1); double iBandsUpper1 = iBandsMQL4(symb, PERIOD_M15, 20, 2, 1, 1); double iBandsLower1 = iBandsMQL4(symb, PERIOD_M15, 20, 2, 2, 1); //------------------------------------------------------------------------ //---------------------- Buy Condition Initial Trigger ------------------- if (close < iBandsLower1) { conditionMet[symbolIndex] = true; } else if (close > iBandsMain1) { conditionMet[symbolIndex] = false; } //---------------------- Condition Start --------------------------- if (conditionMet[symbolIndex] && close < iBandsMain1) { state = true; } return state; }
- Note: I have added a conditionMet function to this so that I can store the boolean for the first time it exceeds the Upper Bollinger Band. I need this to work with multicurrencies hence the array that contains 12 symbols.
iBands MQL4 Function:
double iBandsMQL4(string symb, ENUM_TIMEFRAMES tf, int period, double StdDeviation, int line, int shift) { ENUM_TIMEFRAMES timeframe3 = TFMigrate(tf); int handleBB = iBands(symb, timeframe3, period, 0, StdDeviation, PRICE_CLOSE); double bbUpper[], bbLower[], bbMiddle[]; ArraySetAsSeries(bbUpper, true); ArraySetAsSeries(bbLower, true); ArraySetAsSeries(bbMiddle, true); CopyBuffer(handleBB, BASE_LINE, 1, shift + 1, bbMiddle); CopyBuffer(handleBB, UPPER_BAND, 1, shift + 1, bbUpper); CopyBuffer(handleBB, LOWER_BAND, 1, shift + 1, bbLower); double iBandsValue; if (line == 0) { iBandsValue = NormalizeDouble(bbMiddle[shift], SymbolInfoInteger(symb, SYMBOL_DIGITS)); } else if (line == 1) { iBandsValue = NormalizeDouble(bbUpper[shift], SymbolInfoInteger(symb, SYMBOL_DIGITS)); } else if (line == 2) { iBandsValue = NormalizeDouble(bbLower[shift], SymbolInfoInteger(symb, SYMBOL_DIGITS)); } else { iBandsValue = 0.0; // Default value in case of invalid line parameter } return iBandsValue; }
Con risposta
1
Valutazioni
Progetti
310
28%
Arbitraggio
32
28%
/
63%
In ritardo
10
3%
In elaborazione
2
Valutazioni
Progetti
499
67%
Arbitraggio
5
40%
/
0%
In ritardo
4
1%
Gratuito
Pubblicati: 8 codici
Ordini simili
Option 1: Professional & Technical (Recommended) "MT5: Advanced Trade Management with Recursive Logic and Directional Flipping" Why it works: It sounds like a sophisticated management tool. "Recursive logic" signals that the EA needs to remember what happened in the previous trade. Option 2: The "Safety" Angle (Discrete) "Expert Advisor Developer Needed for Custom Risk Management & Sequential Order Execution" Why it
Hello, My budget is $35 I have a range breakout expert advisor MetaTrader 5 platform that includes 8 profiles, each with its own settings entered within the expert advisor's code. Each profile has its own operating method for a specific symbol, such as start time, end time, close time, risk percentage, take-profit, stop-loss, etc First option TRUE/FALSE for each profile For example, I conducted a one-month test in
Good morning, i need to convert a robot from ex4 file to mq4 file. This current robot only works on démo. I need it to work on real account. That's why i need this modifivation. Thank you
I am looking for a German-speaking MQL4/5 developer to replicate an existing Expert Advisor with identical functionality. What I provide: - The original EA for testing - Videos demonstrating how it works - PDFs with documentation What I need: - An exact copy of the functionality - Clean, well-commented code - Brief consultations in German
EA with Zones
30+ USD
Good day! I have an indicator .mq5 this indicator calculates and draw zones on the chart. My request is to add these specific zones drawn and calculated exactly as the indicator in the EA. A replicate behavior of the zones from the indicator to the EA. Thank you
Task Title Implement Martingale Lot Scaling Sync Between Master and Slave MT4 Trade Copier Background I am using a local master–slave trade copier setup with: 1 Master MT4 4 Slave MT4 terminals Trades are currently copied correctly (entry, direction, symbol, SL/TP). Lot size handling currently copies either: the exact master lot, or a fixed base lot defined on the slave (e.g., always 0.01 or 1.0). Problem When the
SyedAtif
30 - 40 USD
Then this EA will remain simple and clean , exactly following your core rules only: ✅ MA50 crosses Leading Span B → trade opens ✅ Opposite cross → trade closes ✅ No TP / SL ✅ Only one position at a time ✅ Entry only after candle close confirmation ✅ Final Simple MT5 Expert Advisor (English Specification) Entry Rules BUY Entry Open a Buy trade when: MA50 crosses above Leading Span B Trade is triggered only
Julismorfx-Bot
150 - 300 USD
Hello, I am looking for an MT5 Expert Advisor based on a reversal trading strategy . The EA must follow strict risk management and be suitable for prop firm rules . Key requirements: • Platform: MT5 • Pairs: USDJPY, GBPUSD, XAUUSD (multi-pair) • Strategy: Reversal only (H4 context + M15 entry) • Fixed risk per trade (default 0.5%, max 1%) • One trade per pair, max 2 trades total • Every trade must have Stop Loss and
I have a well-tested and profitable trading strategy that I personally use in live markets. I am looking for an experienced Algo/Trading Bot Developer who can convert this strategy into a fully automated trading bot. This is not a basic indicator or script. I need a professional-level trading automation system. What I need: • Convert my manual trading strategy into an automated bot • Bot should execute trades
Hi, I want to develop an EA that replicates the logic of a bot I’m currently watching on a live account. The bot has grown an account from $500 to $60k in 3 weeks using a specific 'Buy Stop/Sell Stop' strategy with 0.03 lots. I have the Investor Password and Trade History. Can you analyze the execution patterns and build a replica for me? Let me know your experience with this kind of task. message me for account
Informazioni sul progetto
Budget
40+ USD
Scadenze
a 1 giorno(i)