Convert Single Symbol function to Multi Symbol

仕事が完了した

実行時間20 分
依頼者からのフィードバック
Highly recommended, Work delivered very fast and with 100% satisfaction,

指定

ON an EA (not for trading but only for reading buffers) which has a function SearchZigZagExtremums

I want this function to be converted into multi symbols  multi period

below is my attempt to modify the free program which is available in mql codebase

//+------------------------------------------------------------------+
//|                           ZigZag EA(barabashkakvn's edition).mq5 |
//|                                   Copyright © 2009, Tokman Yuriy |
//|                                            yuriytokman@gmail.com |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2009, Tokman Yuriy"
#property link      "yuriytokman@gmail.com"
#property version   "1.002"

//--- input parameters
input string      ____1___          = "Настройки индикатора ZigZag";
input int         ExtDepth          = 12;             // Depth
input int         ExtDeviation      = 5;              // Deviation
input int         ExtBackstep       = 3;              // Backstep
//---
//---
int            handle_iCustom;               // variable for storing the handle of the iCustom indicator
#define RESET 0
int min_rates_total;
int symbolCount;
string symbolsList[];
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit() {
//---
   min_rates_total=100;
//--- indicator buffers mapping
   symbolCount=SymbolsTotal(true);
   if( ArrayResize(symbolsList, symbolCount) < symbolCount ) return (INIT_FAILED);

//--- create handle of the indicator iCustom
   for(int i=0; i<symbolCount; i++) {
      symbolsList[i] = SymbolName(i,true);
      handle_iCustom=iCustom(symbolsList[i],Period(),"Examples\\ZigZag");
//--- if the handle is not created
      if(handle_iCustom==INVALID_HANDLE) {
         //--- tell about the failure and output the error code
         PrintFormat("Failed to create handle of the iCustom indicator for the symbol %s/%s, error code %d",
                     symbolsList[i],
                     EnumToString(Period()),
                     GetLastError());

         //--- the indicator is stopped early
         return(INIT_FAILED);
      }
   }

//---
   return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason) {
//---

}
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick() {
//---

//---
for(int j=0; j<symbolCount; j++) {
      symbolsList[j] = SymbolName(j,true);
      
   double array_results[];
 
      if(!SearchZigZagExtremums(4,array_results))
         return;
         
      double high=0.0,low=0.0;
      double room_0 = array_results[0]; // index 0
      double room_1 = array_results[1]; // index 1
      double room_2 = array_results[2]; // index 2
      double room_3 = array_results[3]; // index 3

//--- находим верх и низ
      if(room_1>room_2) {
         high=room_1;
         low=room_2;
      } else {
         high=room_2;
         low=room_1;
      }
     
      Print(symbolsList[j], array_results[0]);
      Sleep(1000);
      }
      


//---

   }

//+------------------------------------------------------------------+
//| Search for indicator extremums                                   |
//+------------------------------------------------------------------+
   bool SearchZigZagExtremums(const int count,double &array_results[]) {
      if(!ArrayIsDynamic(array_results)) {
         Print("This a no dynamic array!");
         return(false);
      }
      ArrayFree(array_results);
      ArrayResize(array_results,count);
      ArraySetAsSeries(array_results,true);
      int      buffer_num=0;           // indicator buffer number
      double   arr_buffer[];
      ArraySetAsSeries(arr_buffer,true);
//--- reset error code
      ResetLastError();
//--- fill a part of the iCustom array with values from the indicator buffer
      int copied=CopyBuffer(handle_iCustom,buffer_num,0,100,arr_buffer);
      if(copied<0) {
         //--- if the copying fails, tell the error code
         PrintFormat("Failed to copy data from the iCustom indicator, error code %d",GetLastError());
         //--- quit with zero result - it means that the indicator is considered as not calculated
         return(false);
      }
      int elements=0;
      for(int i=0; i<copied; i++) {
         if(arr_buffer[i]!=0) {
            array_results[elements]=arr_buffer[i];
            elements++;
            if(elements==count)
               break;
         }
      }
      if(elements==count)
         return(true);
//---
      return(false);
   }


Goal : I want this program to be modified so it can read buffers 

      double room_0 = array_results[0]; // index 0
      double room_1 = array_results[1]; // index 1
      double room_2 = array_results[2]; // index 2
      double room_3 = array_results[3]; // index 3

for each symbol existed in marketwatch and when i print

Print(symbolsList[j], array_results[0]);

I get results like

Symbol_1 buffer_for_Symbol_1 for PERIOD_1

Symbol_2 buffer_for_Symbol_2 for PERIOD_2

like this

応答済み

1
開発者 1
評価
(361)
プロジェクト
643
26%
仲裁
92
72% / 14%
期限切れ
12
2%
仕事中
パブリッシュした人: 1 code
2
開発者 2
評価
(38)
プロジェクト
50
10%
仲裁
1
0% / 0%
期限切れ
8
16%
類似した注文
Mt4 indicator 50+ USD
I was on co pilot and they said they can build this harmonic prz indicator for me but i was not able to build it. Can anyone help, I have the indicators in ex4 file but not the mq4 files. I want to add these indicators and you can turn it into a complete full indicator like the attached photo I sent and also if you can make it into an automated EA, that would be awesome
We aim to belong to the Top 5 of Mql5 marketplace sellers. We are already in the Top 20 only after 2 years of presence. We are complying with the best standards in ethics and transparency. We already have a good reputation, numerous performing signals with no tricks, a building up community a presence on all marketplaces and social media Join the team and let's bring value to this marketplace
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
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
Hello, I am looking for an experienced MT5 (MetaTrader 5) developer to create a simple and reliable Forex trading EA. Broker: Skyriss Platform: MT5 Requirements: • EA should work only on Forex pairs (EURUSD, GBPUSD, USDJPY, USDCHF) • Around 1–2 trades per day is enough • Proper risk management with Stop Loss (SL) and Take Profit (TP) • Prefer low-risk trading with 0.01–0.03 lot depending on balance • No martingale or
Título: Necesito ayuda para usar MetaTrader 4 build 1443 para que funcione mi robot Descripción: Estoy buscando un desarrollador o experto en MetaTrader 4 que pueda ayudarme a utilizar la versión antigua de MT4 build 1443, ya que mi robot de trading solo funciona correctamente en esa versión. Actualmente cuando instalo MetaTrader 4 se actualiza automáticamente a versiones más nuevas (1457 / 1460), y mi robot deja de
hello, please take a moment to review my project. It is for Quanttower. it is very detailed in the instructions. Thank you, Just let me know if you can do it and the whats the cost and timeframe
Indicator buy sell 30 - 225 USD
Looking for a buy and sell indicator Arrows should be placed at closing of candle for confirmation and then not disappear or repaint. I am looking for a serious devleper who doesn't play games waste time and knows what he's doing so I can build a long-time professional relationship with him. I would only be willing to put the deposite down after I know it doesn't repaint because many developers pulled me to
project details : BUILD Custom Pine Script Indicator + Strategy from Logic Spec (NOT a code copy job) I need a Pine Script developer to BUILD a custom indicator and strategy FROM SCRATCH based on a logic specification I will provide. This is not a copy/modify job — if you can only work with source code, this is not for you. WHAT I NEED BUILT: 1. VALID HIGH/LOW DETECTION - Identify swing highs and lows using price

プロジェクト情報

予算
30+ USD