Modify existing EA to use iCustom

전문가

작업 종료됨

실행 시간 4 일
피고용인의 피드백
It is easy to work

명시

The job is to code a new trade logic to this well structured and well functioning EA. The original EA is using a moving average crossover to trigger trade signals, and features multiple individual settings.

In short I want the moving average trade logic removed and use my own simple trade logic from a custom indicator, Complex_Pairs1_M. This is a crossover strategy as well: when the indicator signal line crosses its own SMA a trade signal is given. A few additions to the EA is needed as well.

Detailed specification:

1) Use the EA Generic MA Crossover Version 2 [TD] as basis for the final solution.
2) Delete external parameters for the original moving averages (iMA).
3) Add the indicator Complex_Pairs1_M as iCustom, so it follows the trade-logics below.
4) Add the indicator parameter periodSMA as external integer.
5) Add a "stoplossbuffer" as external double. This parameter sets the minimum distance required (0.0001 as default) between signal line and SMA to trigger a stop loss.
6) Add "useCloseBuyLogic/CloseSellLogic" as external booleen value.
7) Add "ClosePositions on Friday" before market close as external booleen value.
8) Add "DoNotTradeSundays" as external booleen value. Trades must only be placed Monday-Friday GMT when true.
9) Make sure that the EA can only have one open trade for each currency pair.
 
The EA must be able to follow the trade-logics below:

double dSignalLineShift2, dSignalLineShift1, dSignalLineShift0, dSmaShift2, dSmaShift1, dSmaShift0;

OpenBuyLogic: Open long when signal line of custom indicator is crossing its own SMA to the upside.
if( (dSignalLineShift2<=dSmaShift2) && (dSignalLineShift1>=dSmaShift1) && (dSignalLineShift0>dSmaShift0))

CloseBuyLogic: Close long when signal line touches back below SMA.
if( ((dSignalLineShift0 + StopLossBuffer) < dSmaShift0) || or StopLoss(pipvalue) is triggered).
OpenSellLogic: Open short when signal line of custom indicator is crossing its own SMA to the downside.
if( (dSignalLineShift2>=dSmaShift2) && (dSignalLineShift1<dSmaShift1) && (dSignalLineShift0<dSmaShift0))
CloseSellLogic:  Close short when signal line touches back above SMA.
if( ((dSignalLineShift0 - StopLossBuffer) > dSmaShift0) || or StopLoss(pipvalue) is triggered).

I have pasted an explanation to the EA from forexfactory below.
 
Thanks,

Tomas
 
______________
http://www.forexfactory.com/showthread.php?t=211654
The most classic of any trading system, is the humble MA crossover. It is tick-database enabled.

 

extern string Remark1 = "== Main Settings ==";
extern int MagicNumber = 0;
This number should be unique when multiple EAs are attached to a terminal.
extern bool SignalsOnly = False;
If set to true, the EA will only alert you to a trade using any combination of the alerts below.
extern bool Alerts = False;
If set to true, the EA will send a pop-up alert when a trading signal arrives.
extern bool SignalMail = False;
If set to true, the EA will send you an e-mail (assuming you set up your mail in your MT4 Terminal.) when a trading signal arrives.
extern bool PlaySounds = False;
If set to true, the EA will play the file, "alerts.wav" when a trading signal arrives.
extern bool ECNBroker = False;
Some brokers require EAs to first place a trade, and then modify the trade with the stoploss and takeprofit. If your broker requires this, set this value to True.
extern bool TickDatabase = True;
If set to True, the EA will send tick data into the tick database.
extern bool CloseOnOppositeSignal = True;
If set to true, the EA will close a trade if an opposite trading signal appears.
extern bool EachTickMode = True;
If set to true, the EA will take a trade immediately if it sees a signal. If set to false, the EA will take a trade only if there is a signal at the end of the bar.
extern double Lots = 0;
Fixed lot size
extern bool MoneyManagement = False;
Enables/Disables the lot sizing function.
extern int Risk = 0;
The percent of your available margin that you are willing to put into a trade.
extern int Slippage = 5;
Maximum slippage allowed when placing an order.
extern bool UseStopLoss = True;
Enables/Disables the stoploss
extern int StopLoss = 100;
Hard Stoploss in pips.
extern bool UseTakeProfit = False;
Enables/Disables the takeprofit
extern int TakeProfit = 60;
Hard take profit in pips.
extern bool UseTrailingStop = False;
Enables/Disables the trailingstop
extern int TrailingStop = 30;
Trailing stop in pips. Note, the EA will only trail profits.
extern bool MoveStopOnce = False;
Enables/disables the move-to-breakeven function.
extern int MoveStopWhenPrice = 50;
Trigger price to move the stoploss.
extern int MoveStopTo = 1;
Price in pips relative to breakeven to move the stoploss to once the trigger price is hit.
Using these values as an example, the EA will move the stoploss to breakeven + 1 if the trade hits 50 pips profit.
extern string Remark2 = "";
extern string Remark3 = "== MA1 Settings ==";
extern int MA1Period = 0;
Period of the Fast MA
extern int MA1Shift = 0;
Shift of the Fast MA
extern int MA1Method = 0
Method of the Fast MA;
0 = SMA
1 = EMA
2 = SMMA
3 = LWMA
extern int MA1Price = 0;
Price of the Fast MA
0 = Close
1 = Open
2 = High
3 = Low
4 = Median
5 = Typical
6 = Weighted
extern int MA1CrossBuffer = 0;
The number of pips above or below MA2 in order to trigger a trade. This is designed to prevent some whiplash and false entries.
extern string Remark4 = "";
extern string Remark5 = "== MA2 Settings ==";
extern int MA2Period = 0;
Period of the Slow MA
extern int MA2Shift = 0;
Shift of the Slow MA
extern int MA2Method = 0;
Method of the Slow MA;
0 = SMA
1 = EMA
2 = SMMA
3 = LWMA
extern int MA2Price = 0;
Price of the Slow MA
0 = Close
1 = Open
2 = High
3 = Low
4 = Median
5 = Typical
6 = Weighted
Note: You can enable all of the stoploss options if you so choose, just keep in mind that the EA will use the tightest stoploss available to it.

응답함

1
개발자 1
등급
(473)
프로젝트
1139
44%
중재
51
31% / 33%
기한 초과
501
44%
무료
2
개발자 2
등급
(73)
프로젝트
257
53%
중재
16
50% / 38%
기한 초과
83
32%
무료
3
개발자 3
등급
(30)
프로젝트
71
18%
중재
9
22% / 67%
기한 초과
15
21%
무료
게재됨: 2 코드
비슷한 주문
I’m looking for an experienced developer to help build a trading bot for Polymarket , focused on short-term crypto prediction markets (e.g. 5–15 minute intervals). The strategy is fully rule-based and operates on binary outcome markets (YES/NO shares). The bot should be able to: monitor live market prices and probabilities, execute trades based on predefined conditions, manage positions dynamically before market
This project is to create or provide a back testable renko chart builder/EA for MT5 which must be: Back testable using strategy tester Optimisable using strategy tester Accurate in terms of price, including wicks Accurate in terms of time, with no future date issue. Able to produce both normal and median renko. The renko must have been developed by the developer OR have been used previously by the developer for off
Hi developers, I want to create a Trading Assistant. The minimum developer experience is someone who has created a Trading Assistant before. The developer has worked on more than 100 job orders The Trading Assistant uses a Risk-Reward Ratio, a movable panel, an expandable panel with a hidden menu, and a modern UI. Thank you
Core Requirements: Platform: MetaTrader 5 (MT5). Symbol: XAUUSD (Gold). Timeframes: M1 and M5 (user selectable). Trading Style: Scalping with controlled risk (not aggressive or high-risk strategies) -> adjustable, even better. Execution: Fast execution, optimized for gold market conditions. Frequence = adjustable, but there should be 10-20 trades per day. Strategy Logic: Use a reliable and conservative strategy
Add function: EA setting: External profit record = true or false Reason: Brokers archive MT5 trading records Edit(SGEA_v20_MJSv42.mq5): You can now delete CSV records for completed trading cycles, keeping only CSV records for incomplete trading cycles. Reasons: 1. External historical trading records are used to let the Expert Advisor (EA) know the total profit or loss of the current trading cycle, allowing current
I'm looking for an experienced programmer to convert my MT5 or MT4 EA to CTrader, requiring a deep understanding of both platforms to ensure a smooth transition without loss of functionality
Eu preciso disso. A linha central do TMA (17,5,1.5) será a principal referência. Outra linha de média móvel (AVG) de 3 períodos decrescentes 2. As ordens serão as seguintes: abaixo, somente compra de TMA; acima, somente venda de TMA. O sinal de entrada será o seguinte: se o preço estiver acima da Média Móvel Tarifária (TMA), será apenas para venda; quando o preço se mantiver abaixo da Média Móvel Tarifária (AVG)
Hola, estoy buscando un desarrollador MQL5 con experiencia real en trading algorítmico. Necesito un EA para XAUUSD con: Control de Drawdown filtro de mercado (tendencia vs rango) gestión de riesgo dinámica optimización para sesiones específicas Antes de avanzar quisiera saber: ¿Qué experiencia tienes con EAs en MT5? ¿Has trabajado con estrategias de oro (XAUUSD)? ¿Cómo gestionas el drawdown en un bot? ¿Puedes mostrar
Double ma 30+ USD
Create an EA on moving averages. The EA will open a trade when the price is above the averages. It will open another when it is below the averages. Ability to work on any timeframe. Ability to use a news filter and a martingale...or to work on a grid
I need a skilled MQL5 developer to create a stable and efficient Expert Advisor (EA) for trading Gold (XAUUSD) on MetaTrader 5 (MT5) , focused on controlled, mid-to-low risk scalping . Core Requirements: Platform: MetaTrader 5 (MT5) Instrument: XAUUSD (Gold) Timeframes: M1 and M5 (user selectable) Trading Style: Scalping with controlled risk (not aggressive or high-risk strategies) Execution: Fast execution

프로젝트 정보

예산
40- USD
기한
 3 일