Class-driven Averaging Subroutine - position averaging function, opening positions against the trend

MQL5 Эксперты

Работа завершена

Время выполнения 43 дня
Отзыв от исполнителя
Great customer. Clear instructions. Thanks. Look forward to more jobs in the future.

Техническое задание

Develop a class-driven sub-routine that can be implemented in a variety of existing Expert Advisor with minimum complications of integration. It should implement a good OOP concept for reusability and derive sub-mechanisms.

This sub-routine will work on algorithms running on MT5 terminal; we may need to develop an expert advisor opening a long or short position for test. This subroutine purpose is to implement a strategy of averaging down.

This is that we open:

BUY 1 LOT EURUSD at 1.19209

This sub-routine will open automatically

BUY 1.3 LOT EURUSD at 1.19172 with a comment "Level_1"

Resulting on an average price in EURUSD of 1.19195 at 2.30 LOT, so this sub will draw a BLUE line at this average level. RED if SELL position.

Attention: For different LOT of positions, the average price is calculated using a mathematical formula.

Finally, will open automatically if the price continue against:

BUY 1.69 LOT EURUSD at 1.19078 with a comment "Level_2"

This next average level as is not open yet so will draw a line in "Bisque" color with the parameters of the averager sub-routine in this case the LOT factor increases to a 30% or 1.3X and the amount of PIPs in the following format:  1.30X/1.69N/94p indicating the average %, resulting lot size and pips in distance.

If this average level is triggered then the average price of the EURUSD position is 1.19145 at 3.99 LOT.

The PIPs difference between 1.19209 and 1.19172 and the next 1.19145 is provided as a parameter for the sub-routine.

The averager sub-routine will have a maximum amount of positions to open. And a FLOOR parameter that sets the minimum distance, this distance can be set in price or points. If in the example below we set a price floor of 1.19130 the next level provided can not be 1.19145 and will be floored at 1.19130. If we set a points floor of 70 pips the next level can not be 67 pips as provided and will be floored at 70 pips.

The subroutine will increase distance in the same way to increase volume, this is that an increment can be set of a 10% or 1.1X added to the distance provided.

If the instrument maximun volume is 50, and the next average down is 56. We will fraction the order in 50 (the max.) and another position at the same price level at 6, with the same comment. If the broker have a maxium limit of positions and can not open, we will pop-up a message alterting with the limitation of opening new positions. 

Finally, the sub-routine will use a time delay to evaluate if a different distance in pips is supplied.

Inputs:

AveragerFunc(
             bool AverageUSE=true,
             int Distance=1,
             ENUM MinDistType=1, //1-Price, 2-Points
             double MinDistVal=0,
             bool UseCalcDelay=true,
             ENUM CalcDelay=1M, //1M,2M,5M,15M,1H,1D,1W, TF defaults in example
             DistanceFactor=1.1, //points + 10% in this case
             LotsFactor=1.3, //volume + 30% in this case
             MaxOrders=10, //maximum of averaging positions
             string s="Averager " //default comment for opening positions and concatenate
             )

Output of the subroutine will be:
LOTs BUY:        2.3             //actual volume size
LONG Avg:       1.19195       //actual average
LONG N Avg:    1.19145       //next average

The average calculation have to take into account any commission and swap charges in any given period. So if this positions stays for more than a day and a swap is charged, have to be reflected in the resulting average price every day.

Attached an image of the horizontal lines.

Откликнулись

1
Разработчик 1
Оценка
(27)
Проекты
43
7%
Арбитраж
18
6% / 78%
Просрочено
26
60%
Свободен
2
Разработчик 2
Оценка
(169)
Проекты
204
30%
Арбитраж
25
40% / 44%
Просрочено
12
6%
Свободен
Похожие заказы
Broker is Blackwell Global. I run a MAM account and have been using a bot that uses 0.02 lots per £100 with only 1.5% risk per trade but the bot has been unprofitable. The more lots per £100 the better, but risk of roughly 1%-2% + fees of 4 pence per 0.01 lots should be considered. The more trades the system does the better, as this is a MAM account - HFT would be perfect but any strategy is okay. Any forex pair is
I am looking for an experienced MQL5 developer to build a fully automated trading bot (Expert Advisor) for MetaTrader 5 . The bot will focus on trend-following scalping and must be designed to trade XAUUSD and BTC on the M1 timeframe . The objective is to create a stable and efficient EA that can open multiple trades per day while managing risk using proper stop-loss, take-profit, and trailing stop mechanisms
I am looking for MQL5 Programmer who can convert a trading view indicator into MT5 Prop firm EA. The EA should follow all trading rules of a prop firm and able to pass evaluations. The EA should be able to generate profits in funded account also. There must be dashboard that should all parameters like Account size, daily drawdown, target profit, session name, etc. Please contact me for more details
I am looking for an experienced MT4 (MQL4) developer to build a Harmonic Pattern Indicator with a PRZ (Potential Reversal Zone) detection system , similar to advanced harmonic scanners. Kindly apply if you can handle this project. Note: I don't want unprofessional developer
hello, i want a convertion of this trading view indicator FVG (NEPHEW_SAM_) to mql5 to be add later to an expert advisor. i want to access this data, gap data printed on current timeframe and multi timeframe that i choose (current, timeF1, timeF2, timeF3, timeF4)(gap time, gap value, top gap value, low gap value, gap type bull / bear, gap type iFVG or FVG). a function that check if the price is checking the gap at
I have developed a ready-made quantitative trading system for MetaTrader 5. The system uses an ensemble of machine learning models (XGBoost, LightGBM, Random Forest) combined with a market regime filter based on a Hidden Markov Model. Core features: - Automated trading for XAUUSD - Risk management and dynamic position sizing - Market regime detection (trend / range) - Volatility filter - Telegram monitoring interface
Hello 100 - 200 USD
Programmer Requirement The programmer must have good experience with the following indicators and price action patterns used in this strategy: Bollinger Bands RSI ATR The programmer must also understand and correctly implement the following candlestick patterns: Bullish Engulfing Bullish Pin Bar Bearish Engulfing Bearish Pin Bar The programmer must have experience combining technical indicators with candlestick
EA CONVERTER 30 - 100 USD
I need someone who can create EA CONVERTER that can installed in my phone and convert my EA into mobile bot and should be my app ,and people should be able to use it they're are interested but they should pay for it
I need EA programmer to create me an Ea that trades Gold and Indices it should be mobile bot automation, that can both scalp and swing trades, the bot should use top analysis from D1 then H4 and H1
Bot 50 - 150 USD
Hello, I am looking to purchase a professional trading bot for Gold (XAUUSD) that includes the full strategy . However, I would like the option to test the bot for one month before committing to the purchase . If you have a bot that performs well on Gold trading , please send me the details along with the trial option for one month so I can evaluate its performance. Thank you

Информация о проекте

Бюджет
150+ USD
Сроки выполнения
от 1 до 10 дн.