EA to switch between 2 symbols according to trading parameters (with code for MT4 & MT5)

MQL5 エキスパート

仕事が完了した

実行時間60 日
開発者からのフィードバック
Even we done this project in a long time, I am grateful for great ideas and nice communication. I hope catch his future jobs too :)
依頼者からのフィードバック
Mohammad is BY FAR the most talented programmer I hired so far. He contributed with original solutions to problems that had long troubled me. Great communication, definitely a long-term partnership.

指定

GENERAL IDEA
-- we specify 2 symbols (ex. input symbol 1 = Microsoft & symbol 2 = Apple);

-- we specify input initial amount to trade (ex. $10,000);

-- we specify the interval at which the EA will check the trading conditions (ex. input interval_X = 10M)

-- we specify the trading parameters (ex. input conditions X = 1.0%; & Y = 1.5%)

ACTIONS:

1) UNIQUE ACTION = FIRST BUY:

-- if there is no open position by this EA, immediately buy X shares (= lot1) of symbol 1 at current ask_price (using the initial amount to calculate the lot);

-- register the quotes of BOTH symbol_1 & symbol_2 at the time of the transaction (let's call the "LAST-TRADE-QUOTE-1 & LAST-TRADE-QUOTE-2): those values will be used for trading condition X.


2) REGULAR/REPEATED ACTIONS: (obs. after the first buy, there'll always be an open position)

at every interval_X, check which symbol is the current open position;
-- if symbol 1 is current position, check if condition_X or condition_Y is true
  -- if symbol 1 is current position & (X or Y is true) --> sell symbol 1 

-- use the money from the sell to calculate lot2 (# of shares) --> buy  symbol 2

-- register quotes of both symbols (last-trade-quote-1 & last-trade-quote-2);


-- if symbol 2 is current position, check if condition_X or condition_Y is true
-- if symbol 2 is current position & (X or Y is true) --> sell symbol 2

-- use the money from the sell to calculate the new lot1 (# of shares) --> buy  symbol 1;

-- register quotes of both symbols (last-trade-quote-1 & last-trade-quote-2);

Bottom line:

-- after the first buy, there will always be an open position;

-- the EA will check the trading conditions: if they are true, sell symbol 1 & buy symbol 2 (or sell symbol 2 & buy symbol 1);

-- repeat the process at the defined interval

==============

GENERAL IDEA WITH MORE DETAILS: 

An important part of this EA is the "dynamic calculation" of the lots, meaning: after we close a position, the money generated by the sell of symbol_1 (or symbol_2) will be used to calculate how many shares we can buy of symbol_2 (or symbol_1). 

I think this can be achieved with the use of the following variables: 

double BUYMONEY (the available money to make the buy), SELLMONEY (the money generated by the sell), STANDBYCASH (the money not used in the buy after rounding down to min-lot). 

As there is a MIN LOT requirement, we never use the total amount of available money. We'll call this the STANDBYCASH. 


1) calculating the STANDBYCASH
let's say we have 10,000 to start with and Microsoft is $98. 
let's say the MIN-LOT = 1.0. 
so we could buy 102 shares of Microsoft. 
now: 102 lots at $98 = $9,996, which means that $4 are not used: that's the standbycash = $4
so standbycash = previous available money to make a buy (or BUYMONEY) - amount spent in the buy (which can be calculate by lot * ask.price). 

2) so, after the first buy, we will (always) have an open position.
let's say the trading conditions are true, so it's time to sell. 
let's say the bid price for Microsoft is $104. 
the amount generated by this sell (SELLMONEY) = lot1 * bid1 = 102 * 104 = $10,608 
so the new total amount available to make a buy (let's call it BUYMONEY = standbycash ($4) + sellmoney ($10,608) = $10,612
{obs. later on we can also include TRADEFEES: buymoney = standbycash + sellmoney - tradefees}
With that, we can calculate LOT2 (the # of shares of symbol_2 to be bought): 
LOT2 = buymoney / ask2 (the ask price of symbol2) (rounding to min lot). 
Let's say the ask_price of Apple is $84. 
With $10,612 we could buy 126 shares of Apple. 
Now, 126 * 84 = 10,584 meaning that we will have $28 left in the account. 
new standbycash = 10,612 - 10,584 = $28

Next time, we will sell Apple, say, at 90.

126 shares * 90 = $11,340 (sellmoney)
new buymoney = sellmoney + standbycash = 11,340 + 28 = $11,368

With that, we calculate the new lot of Microsoft to buy.
Let's say Microsoft is now $112.
With $11,364 at $112, we can buy 101 Microsoft (always rounding to min lot). 
Amount spent = 101*112 = $11,312, meaning the new standbycash = 11,364 - 11,312 = $52

And so on.

=========================

SPECIFICATIONS ABOUT THE CONDITIONS X & Y

input periods = 50;

input condition_X = 1.0%
input condition_Y = 1.5%

X1 = (bid1 / last-trade-quote-1) - (ask2 / last-trade-quote-2);  // X1 is the condition X when symbol_1 is the current/open position
X2 = (bid2 / last-trade-quote-2) - (ask1 / last-trade-quote-1); // X2 is the condition X when symbol_2 is the current/open position

Y1 = bid1 / avg1 (= average of 50 periods of symbol1) - ask2 / avg2   // Y1 is the condition Y when symbol_1 is the current/open position
Y2 = bid2 / avg2 (= average of 50 periods of symbol2) - ask1 / avg1  // Y2 is the condition Y when symbol_1 is the current/open position

if (X1 >= condition_X || Y1>= condition_Y) bool sell_1_buy_2 is true
if (X2 >= condition_X || Y2>= condition_Y) bool sell_2_buy_1 is true

===========================

Thanks

Marcos

PS. $100 is the budget for having the EA with the code for both MT4 & MT5

PS2. I have developed this myself and works well in the strategy tester, but I want/need it to be protected against potential errors.

So, the developer who accepts the job may either revise/adapt/protect the code I already have or create his own. 

応答済み

1
開発者 1
評価
(69)
プロジェクト
93
34%
仲裁
10
40% / 30%
期限切れ
5
5%
類似した注文
Message me please for the investor login. You will replicate the ea and I shall tell u some things about it, I am not paying over $100. You should have great skills. The EA can handle any market and shall not blow the account
TPO 30+ USD
Develop an MT5 EA that continuously follows market direction using one active market position and one opposite trailing pending stop order. EA must be able to work with manual trading, any MT5 indicators, Strategy Tester, Live Account, all VPS and Demo Account. EA able to trade forex, XAUUSD, Indices and Cryptocurrencies
[7/6/2026 12:24 PM] DR.HassaN: Current Phase: Comprehensive Review & Final Enhancement_ This indicator is designed for the TradingView platform. Now that the core engines have been completed, I want to enter a comprehensive review and professional enhancement phase before adding any major new features. My goal is to transform this indicator into a premium institutional-grade TradingView indicator , both in terms of
Part 1: Project setup Input settings (risk, stop loss, take profit, EMA periods) Indicator initialization Trade management framework Part 2: Trading logic EMA crossover detection Buy/Sell entry rules One-trade-per-symbol check Part 3: Risk management Automatic lot size calculation Stop-loss and take-profit placement Trade execution and error handling Part 4: Final touches On-screen information Optimization
I am looking for a losing EA . the idea behind is that some of the Strategies can be reversed into a positive strategy . In fact , most of the Experts -i think around %90 or more - can not be reversed into a positive strategy , but some fewer can be , around %10. İ will work to re-organize and reconstruct the strategy to make it a positive one. before selecting you can give .ex5 file and you will give me the open
I am looking for an experienced MQL4 or MQL5 developer to build a high-frequency (HFT) latency arbitrage Expert Advisor for cryptocurrency trading between LMAX and IC Markets. I need someone who understands low-latency execution, price feeds, slippage, spreads, and fast order execution. The basic idea is that LMAX acts as the leading price feed while IC Markets is the execution broker. The EA should constantly
Hello, I am reopening this project with a fully updated and clarified specification. I am looking for a high‑level MQL5 developer who can deliver a clean, stable, and professional Phase 1 version of my: Institutional‑Grade Multi‑Currency MT5 EA (A2SR + SMC + Smart Recovery + Smart Grid + Liquidity + Volatility + Safety Filters) This EA is not a simple indicator conversion or a basic strategy. It is a structured
Hello, I am looking for an EA that generates few $ every day in a safe way, I especially do not want a martingale EA, the maximum open lot is 0.01 in any case, if you already have in your possession an EA like that already functional please send me a message
I am looking for an experienced MQL5 developer to convert my existing trading strategy into a fully automated MetaTrader 5 Expert Advisor (EA). Requirements: Develop a robust and efficient MQL5 Expert Advisor based on my EMA trading strategy. I will provide the complete trading logic, including entry, exit, risk management, and trade management rules. The EA should execute trades automatically without manual
I am looking for an expert MQL5 developer to build a robust, professional Expert Advisor for Gold (XAUUSD). The EA must be Event-Driven (OnTick) with no 'Sleep' functions, ensuring instant execution. ​Core Logic: ​Grid Strategy: Start with 0.02 Buy/Sell. Lot size sequence: 0.02, 0.03, 0.05, 0.09, 0.14, 0.26, 0.44, 0.75, 1.28, 2.18 (Max 10 steps). ​Dynamic TP: Total basket TP must update instantly upon new order

プロジェクト情報

予算
60 - 100 USD
締め切り
最低 1 最高 7 日