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

MQL5 Esperti

Lavoro terminato

Tempo di esecuzione 43 giorni
Feedback del dipendente
Great customer. Clear instructions. Thanks. Look forward to more jobs in the future.

Specifiche

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.

Con risposta

1
Sviluppatore 1
Valutazioni
(27)
Progetti
43
7%
Arbitraggio
18
6% / 78%
In ritardo
26
60%
Gratuito
2
Sviluppatore 2
Valutazioni
(169)
Progetti
204
30%
Arbitraggio
25
40% / 44%
In ritardo
12
6%
Gratuito
Ordini simili
Am looking for an well experienced developer or team to build a basic forex trading automation system connected to MetaTrader (MT4/MT5). The system should allow users to connect their trading accounts and execute trades automatically based on predefined signals or a master trading account. Experience with MetaTrader APIs, trade copying systems, and forex automation is preferred. NOTE: Kindly apply if you have done
EA 30+ USD
Subject Hello. I want an MT5 Expert Advisor that can grow a small account by catching strong trends and holding trades for a long time. Requirements: The EA should trade mainly XAUUSD and major pairs like EURUSD or GBPUSD. It should use a trend-following strategy and be able to hold trades for hours or even several days when the trend is strong. The entry should be a sniper entry using indicators like moving
Document attached to description. Do not use anything else you add yourself like Gap down, other anything else. Only ohlc mtf, hh ll. Hl lh. Previous bar [1]. Previous two bar [2]. Need programmer can help each entry and Condition. Tp use condition is same after price move from entry. Pending limit and stop order. If you not understand looking for programmer want to help me complete my ea conditions and entry. Just
need a high-quality Expert Advisor for MT5 based on the RSI strategy. ​Key Features: ​News Filter: The EA must stop trading 30 minutes before and after High-Impact news. ​Risk Management: > - Customizable Lot size (Default: 0.05). ​Hard Stop Loss fixed at 10 USD. ​Trailing Stop feature included. ​Strategy: RSI (30/70) entries for Gold and Forex. ​Please provide a professional and clean MQL5 code
am looking for an experienced developer to create a profitable scalping Expert Advisor for MetaTrader 5. i dont have a strategy therefore you should also come up with the strategy for EA Requirements: EA must work on M1 and M5 timeframes Designed mainly for scalping Minimum 75% win rate Small stop loss and controlled drawdown Must include risk management Developer qualification: Explanation of the trading strategy
I’m looking to acquire an existing, profitable Expert Advisor (EA) with full source code to add to our client investment portfolio. To be clear, this is not a request to develop or design a new strategy. If you already have an EA that is proven, consistent, and production-ready, I’m open to reviewing it immediately. Please apply only if you meet all the requirements below. Submissions without a proper introduction or
Good morning, I have a Gap Fill strategy and a 10 min opening range break strategy that trade on RTH ES Futures data I have been working on that seem to have some bugs while live trading. They have both been coded by ChatGPT so I would like someone that know how to properly code a strategy to go over each to proof and debug them. Would you be able to do this and could you possibly add some context or features that
The detailed specification of the trading strategy is attached. The key here is thet the EA needs to be simple to use yet effective. The indicators DO NOT have buffers that can be used for EAs
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

Informazioni sul progetto

Budget
150+ USD
Scadenze
da 1 a 10 giorno(i)