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
346
29%
Arbitraggio
36
28%
/
64%
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
Maritangle based algo
100+ USD
need to create specific alo which can be changed with diffrence currency and method, it consist of risk management in mariangle, period will be changed, if trades close it will start form there without restart the server
Create EA based on indicator, Basic Harmonic Pattern
60 - 100 USD
I trade NAS 100 using Harmonic Patterns. I want to create a MT5 EA to trade based on this indicator: https://www.mql5.com/en/market/product/78325?source=Site +Market+MT5+Indicator+Search+Rating006%3abasic+harmonic+patterns I want the EA to have the same take profit levels as indicator: TP1, TP2, TP3 (select in inputs which TP to use). The EA should also use the same Stop Loss as indicator, with the option to adjust
I am looking for a professional and market-savvy MQL developer to build a disciplined, stable Scalping Expert Advisor (EA). The ideal developer must have a solid understanding of Trend Identification, Fibonacci Levels, and Technical Indicators , alongside strict risk management implementation. Key Focus Areas & Developer Requirements: Market & Analysis Expertise: ⚬ Deep understanding of Trend direction (Market
NYC
30+ USD
I need a ready-made professional trading EA similar to my current scalping bot, but improved for consistent profit and better risk control. Requirements: - Works on XAUUSD (M5 timeframe) - Fixed lot option (start with 0.01) - Opens only one trade at a time (no multiple positions) - Small, fast entries (scalping style) - Better risk-reward (SL must NOT be bigger than TP) - Breakeven function - Trailing stop to secure
Looking for an experienced MQL4 developer to restore functionality for an MT4 Expert Advisor I've used for 3 years. The software is showing a startup validation error, and I cannot reach the original developer. I'll provide all necessary files and proof of ownership. I don't have the code source just the .ex4 file. Scope of work: - Diagnose the startup validation error of the Expert Advisor - Restore normal
Profitable EAs wanted.
30 - 35 USD
profitable EAs wanted with at least 3 to 5 years backtest. you be submit your proofs such as graphic results, backtesting results, and your demo or weekly the eas has traded
Requirements Specification GoldV16 V0 – MT5 XAUUSD Netting EA 1. Platform: - MetaTrader 5 - MQL5 - XAUUSD - NETTING account 2. Position rule: - Only ONE XAUUSD position may be open at any time. - Fixed lot only. - No Martingale. - No automatic lot increase. 3. Stop Loss: - Stop Loss must be sent immediately when a trade opens. - Default SL distance: 1.00 USD in gold price. - SL distance must be adjustable in Inputs
MQL5 developer needed to code a macro-driven gold trading Expert Advisor for MetaTrader. Body: We have a documented macro-driven trading strategy for gold that needs to be converted into a working MetaTrader Expert Advisor. Experience integrating external data sources, such as economic calendar events or interest rate and dollar index data, into MQL5 is required. An N.D.A. must be signed before strategy details are
Develop a BTCUSD Expert Advisor for MT5
150 - 300 USD
I’m looking for an experienced MQL5 developer to create an MT5 EA similar to Iron Range, mainly for BTCUSD. It should use a range-based entry strategy, support market and pending orders, fixed-lot and percentage-risk sizing, stop loss, take profit, break-even, trailing stop, spread protection, and daily loss or drawdown limits. It should also work with different brokers and include adjustable settings for
2 DRAGONS TRADING STRATEGY
30 - 50 USD
I need someone who can create a Trading Bot/AI or Expert Advisor (EA) for MetaTrader 5 (MT5) based on my manual trading strategy. My strategy uses only two indicators: Envelope and Moving Average. What I need is for the EA to accurately follow my manual trading logic and strategy, while also respecting the exact settings and parameters that I use for both indicators. This is not a Martingale strategy or anything
Informazioni sul progetto
Budget
40+ USD
Scadenze
a 1 giorno(i)