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
347
29%
Arbitraggio
36
28%
/
64%
In ritardo
10
3%
Caricato
2
Valutazioni
Progetti
499
67%
Arbitraggio
5
40%
/
0%
In ritardo
4
1%
Gratuito
Pubblicati: 8 codici
Ordini simili
Hi, I Wanne have a trading robot that give me signals for short buy and sell. And only for all currency in forex trading and also can use it on mt5
ROBOTFORX_V7
40+ USD
i have the robotforx_v7 code but am looking for an experinced developer to improve my code i want it to capture quick moves on 5mins it should be able close like ten trades in small profits
I BUY EA FOR FTMO XAUUSD I am looking to buy professional Expert Advisors (EA) suitable for FTMO and other prop trading environments. I am interested in XAUUSD . I am NOT looking for high-risk EAs with impressive but unrealistic backtests. I am looking for low drawdown, consistent returns and robust strategies that can survive real market conditions. REQUIRED RISK PROFILE Maximum preferred daily drawdown: 1% Maximum
EA REQUIREMENT — READ BEFORE ACCEPTING This is my 4th attempt to get this EA built correctly. Many developers have already failed to reproduce my TradingView results. Please read the complete requirement first. Do not accept the project if you are not confident that you can achieve the required accuracy. I do not want to waste your time or mine. I will provide my TradingView Pine Script, settings, and baseline trade
I want a scalping Ea robot based on EMA crossover
30 - 200 USD
the bot will be used for xauusd scalp trading , want the bor follow the trading indicator will SL and open another opposite order where i can customize the SL margin and risk management
I am looking for an experienced MQL5 developer to build a robust XAUUSD scalping Expert Advisor for MetaTrader 5. The EA should focus on consistent risk management, controlled drawdown, high-quality trade filtering, precise entries and exits, configurable stop loss and take profit, spread and volatility protection, trading-session filters, and reliable execution. I need the strategy to be fully backtestable and
2500k to 10k for one MT5 Expert Advisor, done properly
5000 - 10000 USD
I will pay 2500 to 10000 USD (negotiable) for one MT5 Expert Advisor, built properly. One robot done right, not a batch of cheap jobs. I have a strategy I believe in and a rough draft robot I built myself. The logic is there. The execution is not. That last part is outside my expertise, which is why I am hiring instead of continuing on my own. I am open to feedback on the strategy itself. If you see something in it
Modification of an existing MQL5 EA TH-05
30 - 300 USD
I Have an existing Mql5 Expert advisor (source code), I want a professional programmer to help me Modify the EA... so that it can stop taking new trades once it Gets to a Pacific Lots Size or Floating loss
رباط
30+ USD
//+------------------------------------------------------------------+ //| AdvancedPriceAction.mq5 | //| Copyright 2026, Trading Strategy AI | //+------------------------------------------------------------------+ #property copyright "Trading Strategy AI" #property version "1.00" #property strict #include <Trade\Trade.mqh>
EA LOTS SIZE MODIFICATION !!!
30 - 300 USD
I Have an existing Mql5 Expert advisor (source code), I want a professional programmer to help me Modify the EA... so that it can stop taking new trades once it Gets to a Pacific Lots Size or Floating loss
Informazioni sul progetto
Budget
40+ USD
Scadenze
a 1 giorno(i)