A simple expert advisor scanning multiple codes

MQL5 Asesores Expertos C++

Trabajo finalizado

Plazo de ejecución 4 días
Comentario del Cliente
Very helpful
Comentario del Ejecutor
Thanks! Nice customer.. hoping that we will work together again:)

Tarea técnica

I am very novice in programming a robot and I would like to develop the following EA. Overall the robot is looping continuously over a large number of symbols performing a few calculations on those symbols prices and deciding if it wants to buy or sell. I want no two open positions for the same symbol and also no position exchange (no positions should be closed to open new ones). For each open position of a symbol, the robot will need to find the buying price for that position and the day the position was opened as this is important information for determining the selling point.


I am not sure if one script can loop over several symbols (some users suggest that each tick function can only be employed on a single symbol). I am open to your suggestions (possibly copying pasting the code multiple times to scan various symbols or similar solution. I will need a couple of market days to test the code myself. See below for full annotation:



void OnTick()

  {

\\ Define a list of codes (approximately 500 codes in reality) to be checked. I have unsuccessfully tried defining an array and looping through those symbols. Possibly this is not the right solution (maybe you need to run OnTicks for each code separately. )

string symbol_array[]={"XOM","AAL","ABNB"};

int number_of_symbols=ArraySize(symbol_array);

Print("Total number of symbols is =",number_of_symbols);


for(int symbol_position=1;symbol_position<=number_of_symbols;symbol_position++)

{string stockname=symbol_array[symbol_position];

Print("Current symbol is =",stockname); 


\\ Do some simple calculations on the selected symbol, i.e. take its few last closing prices - No changes needed

double   Current_close = iClose(stockname,PERIOD_M1,0);

double   Close_minus1 = iClose(stockname,PERIOD_M1,1);

double   Close_minus2 = iClose(stockname,PERIOD_M1,2);

double   Close_minus3 = iClose(stockname,PERIOD_M1,3);

double   High_minus_1day = iHigh(stockname,PERIOD_D1,1);

double   High_minus_2day = iHigh(stockname,PERIOD_D1,2);

double   High_minus_3day = iHigh(stockname,PERIOD_D1,3);

double   High_minus_4day = iHigh(stockname,PERIOD_D1,4);

double   High_minus_5day = iHigh(stockname,PERIOD_D1,5);

double   High_minus_6day = iHigh(stockname,PERIOD_D1,6);

double   High_minus_7day = iHigh(stockname,PERIOD_D1,7);

double   High_minus_8day = iHigh(stockname,PERIOD_D1,8);


\\ Calculate a simple index of the trend pattern and also some local percentage changes and derivatives.  - No changes needed

double   Trending_pattern = (High_minus_4day+High_minus_3day+High_minus_2day+High_minus_1day) - (High_minus_8day+High_minus_7day+High_minus_6day+High_minus_5day);

double   Percentage_move3 = (Current_close-Close_minus3)/Close_minus3;

double   Percentage_move2 = (Current_close-Close_minus2)/Close_minus2;

double   Percentage_move1 = (Current_close-Close_minus1)/Close_minus1;

double   Local_derivative = Close_minus2/2 - 2*Close_minus1 +3*Current_close/2;


\\ Generate a buy signal IF Trending_pattern>0 && Local_derivative>0.05 && NO orders are pending for this code and NO positions are open for this code.

I do not want to exchange (close positions to open new ones) any currently open position. I do not know how to implement the 'NO orders should be pending and the 'NO open positions should exist for this code' parts. Please help me with this.

//buy signal

if ( Trending_pattern>0 && Local_derivative>0.05 && OrdersTotal()==0 )

{

   MqlTradeRequest request={0};

   MqlTradeResult  result={0};

//--- parameters of request

   request.action   =TRADE_ACTION_DEAL;                     // type of trade operation

   request.symbol   =stockname;                              // symbol

   request.volume   =1;                                   // volume of 0.1 lot

   request.type     =ORDER_TYPE_BUY;                        // order type

   request.deviation=5;    


OrderSend(request,result);

}


\\ Generate a SELL signal IF 'the current selling price Current_close of an open position for the current code is 1.1 times the price I have bought it in the past' OR 'the position for this code was opened more than 3 days ago'.

I do not know how to implement either of these 2 conditions. Please help me with that.

//sell signal

if (Current_close >1.1*Price_paid_for_position)

{

   MqlTradeRequest request={0};

   MqlTradeResult  result={0};

//--- parameters of request

   request.action   =TRADE_ACTION_DEAL;                     // type of trade operation

   request.symbol   =stockname;                              // symbol

   request.volume   =0.1;                                   // volume of 0.1 lot

   request.type     =ORDER_TYPE_SELL;                        // order type

   request.deviation=5;   

   

OrderSend(request,result);

}


\\ The above calculation has to loop over all codes included in the symbol_array string one by one for an indefinite amount of time.



Han respondido

1
Desarrollador 1
Evaluación
(57)
Proyectos
72
22%
Arbitraje
13
46% / 15%
Caducado
5
7%
Libre
2
Desarrollador 2
Evaluación
(58)
Proyectos
66
8%
Arbitraje
39
26% / 56%
Caducado
12
18%
Trabaja
Solicitudes similares
El 3aksiyat 0 35+ USD
//@version=6 indicator("منظومة El_3aksiiya 0 المتكاملة", overlay=true, max_labels_count=500, max_boxes_count=500, max_lines_count=500) // الألوان color_accum = color.new(#0000FF, 85) color_manip = color.new(#FFFF00, 80) color_dist = color.new(#FFC0CB, 80) color_elliot = #FF8C00 color_fib = #FFFF00 color_entry = #00FFFF color_tp = #00FF00 rsiVal = ta.rsi(close, 14) // نموذج AMD var int barCount = 0 if
Hi all I would like a strategy to be developed for LIMT ORDERS strategy for both Buy/sell limit for XAUUSD, US30 & DE30/40 on the M1 or M5 chart . I have my EA but it's not profitable. It should be a Limit order strategy with a profit factor of 2+ when back testing . You should consider that My EA has trailing stop and a trailing limit order. I have experience in coding in MQL4/5, I'm currently struggling I with
MT5 EA Developer for Structured ICT/SMC Market Logic Requirements Specification: I need an MT5 Expert Advisor only in MQL5. No indicator, no script, no DLL, and no external API. The EA must be built on a rule-based ICT/SMC-style framework with objective, backtestable logic. I am not looking for social-media-style ICT/SMC interpretation. I need a developer who can convert trading concepts into clear coding rules. The
Szukam doświadczonego programisty do stworzenia dedykowanego doradcy eksperckiego (EA) do tradingu. Programista powinien posiadać solidną wiedzę z zakresu MT5, logiki strategii, wskaźników, zarządzania ryzykiem i backtestingu. Doświadczenie w tworzeniu niezawodnych i profesjonalnych robotów handlowych będzie dodatkowym atutem. Proszę o kontakt, jeśli zrealizowałeś już podobne projekty. wszystkie szczeguły podam w
I need an experience programmer on news based EA, the EA will be able to fetch or return both historical and current calendar data and implore them into trading, The rest EA details will be communicated in the chat section
Mambo 30+ USD
I need a bot that can trade weltrade synthetic indices that can be consistently making profits if you have one for deriv its also fine a bot that executes and closes trades automat Will be ideal
I am looking for an experienced MQL4/MQL5 developer to build a custom MT4 indicator from scratch or cracking my ex4 file that i provide to you. I already have an existing indicator (EX4) which produces highly accurate buy/sell signals. I want a similar indicator developed based on its observable behavior and signal structure. my existing indicator is pc id protected so you have to do PC ID security bypass and source
📌 Project Overview: I need a full Smart Trade Management System for MetaTrader 4/5. This is a complete trading ecosystem, not a simple EA. 📌 Core Features: Smart Money Management (risk-based lot calculation) Advanced Trading Toolbox (TradingView-style drawing tools) Central Master Dashboard (risk, filters, account control) Multi-account monitoring (MT4/MT5 synchronization) Real-time monitoring (spread, equity
Hello, i would like to have a ninjatrader indicator. I wanna to have a footprint indicator with delta, imbalances and big trades identifiable. Also I wanna sell it on whop. And it should be fully customisable in NT8
Zone detection is coded , you will be working from that point . Trailing Stop Optimization for live chart . Apply Specific Currency Support . Clean Code . Zone Upper Limit and Lower Limit

Información sobre el proyecto

Presupuesto
44+ USD
Plazo límite de ejecución
de 1 a 3 día(s)