MQL4 및 MQL5에 대한 초보자 질문, 알고리즘 및 코드에 대한 도움말 및 토론 - 페이지 668

 
Artyom Trishkin :

해. 그런 다음 여기에 코드가 있습니다.

그건 그렇고, 아르템.

당면한 과제는 즉시 흥미로운 질문을 제기했습니다.

ALL을 확인하려면 "데이터 가져오기" 절차가 필요합니다.

즉, 타사 소스의 동적 데이터를 동적 배열 에 추가해야 합니다.

MT4/MT5에 이 절차가 있는지 없는지 모르겠습니다.

MT4/MT5로 데이터를 가져오는 방법은 무엇입니까?

그것도 가능한가요???

-------------------------------------------------- ------------------

배열에서 데이터를 읽는 것뿐만 아니라 동적 데이터를 가져오는 데 관심이 있습니다.

-------------------------------------------------- -------------------------------------------------- -----------

그건 그렇고, 여기 http://tol64.blogspot.com/2015/12/easy-and-fast-gui-mql.html 이 가져오기는 건설에 의해 이루어져야 합니다.

간단히 말해서, 당신은 그것 없이는 할 수 없습니다.

-------------------------------------------------- ----------------------------------------

MT4/MT5 또는 해당 확장에서 가져오기가 표시되지 않습니다.

수입해줘요!!!

Библиотека "Easy And Fast GUI" для создания графических интерфейсов на MQL
  • tol64.blogspot.com
С этой статьи я начинаю еще одну серию, относящуюся к разработке графических интерфейсов. На текущий момент нет ни одной библиотеки кода, которая позволяла бы легко и быстро создавать качественные графические интерфейсы в MQL-приложениях. Я имею в виду графические интерфейсы, к которым мы все привыкли в известных операционных системах. Цель проекта — дать конечному пользователю такую возможность и научить это делать с помощью моей библиотеки. Я постарался сделать ее максимально понятной в изучении, с возможностями дальнейшего развития.
 
Aleksey Lebedev :

Brad는 치열하고 포럼의 연대기에 들어갈 가치가 있습니다.

‎ " 어이, 퍼그! 그녀가 강하다는 것을 알아
‎ 코끼리 에게 짖는 소리!”

https://ru.wikisource.org/wiki/%D0%A1%D0%BB%D0%BE%D0%BD_%D0%B8_%D0%9C%D0%BE%D1%81%D1%8C%D0 %BA%D0%B0_(%D0%9A%D1%80%D1%8B%D0%BB%D0%BE%D0%B2)

알렉세이!

나는 포럼에서 당신의 도움을 받을 것입니다!!!

죄송합니다!

 

안녕하세요!

iCustom을 통해 호출된 다른 표시기의 버퍼에서 복사 하여 표시기 버퍼 를 데이터로 올바르게 채우는 방법을 알려주실 수 있습니까? 아이디어는 현재 계측기의 창에서 다른 계측기의 데이터에 따라 구축된 동일한 표시기를 호출할 수 있다는 것입니다.

결과적으로 데이터 버퍼가 비어 있고 그래프가 작성되지 않습니다. 색상 버퍼는 중요하지 않습니다.

 //---- indicator settings
#property indicator_separate_window
#property indicator_buffers 2
#property indicator_plots    1
#property indicator_type1    DRAW_COLOR_HISTOGRAM
#property indicator_color1   Green,Red
#property indicator_style1    0
#property indicator_width1    3

//--- input data
input string OtherSymbol= "" ; //Название символа, по которому считать. Если пусто - текущий символ
//---- indicator buffers
double                     DataBuffer[];
double                     ColorsBuffer[];
//---- external indicator handle
int                        CustomHandle= 0 ;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit ()
  {  
   SetIndexBuffer ( 0 ,DataBuffer, INDICATOR_DATA );
   SetIndexBuffer ( 1 ,ColorsBuffer, INDICATOR_COLOR_INDEX );
   IndicatorSetString ( INDICATOR_SHORTNAME , "PercentChangeHistogram" );
   IndicatorSetInteger ( INDICATOR_DIGITS , 2 );
//----
   if (OtherSymbol!= "" ) //если есть имя другого символа, рекурсивно вызываем индикатор через iCustom 
      { 
      CustomHandle= iCustom (OtherSymbol, _Period , "PercentChangeHistogram" , "" );
     if (CustomHandle==- 1 )
         { Alert ( "iCustom function initialization failed!" );
         return ( INIT_FAILED );}
     }
   return ( INIT_SUCCEEDED );
  }
//+------------------------------------------------------------------+
//|  OnCalculate                                                     |
//+------------------------------------------------------------------+
int OnCalculate ( const int rates_total,
                 const int prev_calculated,
                 const datetime &time[],
                 const double &open[],
                 const double &high[],
                 const double &low[],
                 const double &close[],
                 const long &tick_volume[],
                 const long &volume[],
                 const int &spread[])
  {
   if (rates_total< 2 )
       return ( 0 );
   int start=prev_calculated- 1 ;
   if (start< 1 ) start= 1 ;
   //---
   if (OtherSymbol== "" ) // если input переменная содержит пустую строку, заполняем индикаторный массив через простой расчет функцией CalculateData
                       // если input переменная содержит не пустую строку, пытаемся заполнить индикаторный массив копированием данных другого индикатора
   CalculateData(start,rates_total,open,close);
   else
   CopyBuffer (CustomHandle, 0 ,start,rates_total-prev_calculated,DataBuffer);
   //---
   return (rates_total);
  }
  
...
 
Aleksey Lebedev :

Brad는 치열하고 포럼의 연대기에 들어갈 가치가 있습니다.

알렉세이!

어떤 거래 경험이 있습니까? -

- 없음?

이전에는 거래자들이 간단하고 명확하게 말했습니까?

- Alexei, 플러스 또는 마이너스 계정은 무엇이며 몇 살입니까?

- 아니면 거래 계정이 전혀 없으신가요?

- 아니면 두뇌가 없어 다른 트레이더를 가르치기로 결정했습니까?

- 그런 것들이 많이 있습니다.

-------------------------------------------------- ------------------------------------

- 그리고 나는 상인의 계좌를 가지고 있고 꽤 가치가 있습니다. 오래 전, 20년. 그리고 나는 아무에게도 가르치지 않을 것입니다.

- 여기에 그러한 역설이 있습니다.

 
neverness :

알렉세이!

어떤 거래 경험이 있습니까? -

- 없음?

이전에는 거래자들이 간단하고 명확하게 말했습니까?

- Alexey, 플러스 또는 마이너스 계정은 무엇이며 몇 살입니까?

- 아니면 거래 계정이 전혀 없으신가요?

- 아니면 두뇌가 없어 다른 트레이더를 가르치기로 결정했습니까?

- 그런 것들이 많이 있습니다.

-------------------------------------------------- ------------------------------------

- 그리고 나는 상인의 계좌를 가지고 있고 꽤 가치가 있습니다. 오래 전, 20년 전. 그리고 나는 아무에게도 가르치지 않을 것입니다.

- 여기에 그러한 역설이 있습니다.

당신은 코인의 기술적인 면에서 답을 받았고 이것은 거래의 질과 전혀 연관되어서는 안됩니다.

 
Vitaly Muzichenko :

당신은 코인의 기술적인 면에서 답을 받았고, 이것은 거래의 질과 전혀 연관되어서는 안됩니다.

왜요?

아니면 거래자가 시장에서 게임을 하고 내기를 하는 "문맹인 바보"라고 생각하십니까?

그럼 나도 그들 중 하나다.

나는 어려움없이 dx의 적분을 취합니다. 그리고 너? - 뭐, 문제가 생겼어?

당신은 분명히 이 포럼의 다른 많은 "전문가"처럼 거래자가 아닙니다!

거래자에게 FOREX 시장은 항상 옳은 ''신성한 소''입니다.

이 시장을 통해 아이디어를 추진할 수 있다면 당신은 영웅입니다!

시장이 당신을 뒤집는다면 당신 자신이 당신을 기다리는 것을 이해합니다!

-------------------------------------------------- -------------------------------------------------- ----

그러나 Forex 시장에서 금지된 사람은 없습니다 - 또 다른 역설!!!

당신이 옳고 그름은 중요하지 않습니다! 모든 비용을 지불했습니다!!!

 
Artyom Trishkin :

다시. 우리는 그림을주의 깊게 봅니다.


팁 고마워.

 
neverness :

왜요?

아니면 거래자가 시장에서 게임을 하고 내기를 하는 "문맹인 바보"라고 생각하십니까?

그럼 나도 그들 중 하나다.

나는 어려움없이 dx의 적분을 취합니다. 그리고 너? - 뭐, 문제가 생겼어?

당신은 분명히 이 포럼의 다른 많은 "전문가"처럼 거래자가 아닙니다!

거래자에게 FOREX 시장은 항상 옳은 ''신성한 소''입니다.

이 시장을 통해 아이디어를 추진할 수 있다면 당신은 영웅입니다!

시장이 당신을 뒤집는다면 당신 자신이 당신을 기다리는 것을 이해합니다!

-------------------------------------------------- -------------------------------------------------- ----

그러나 Forex 시장에서 금지된 사람은 없습니다 - 또 다른 역설!!!

당신이 옳고 그름은 중요하지 않습니다! 모든 비용을 지불했습니다!!!

당신은 어레이에 대해, 그리고 당신은 외환에 대해. 그래도 역설!

 
neverness :


- 그리고 나는 상인의 계좌를 가지고 있고 꽤 가치가 있습니다. 오래 전, 20년. 그리고 나는 아무에게도 가르치지 않을 것입니다.

- 여기에 그러한 역설이 있습니다.

경험이 아니라 나이를 부르는 느낌.
 

내 주제에서 나온 귀하의 서신을 읽었습니다. 물론 모두 재미있습니다 :-) 하지만 이 들끓는 질문은 어떻습니까?

SetIndexBuffer(1, tmp1)를 통해 배열을 선언하면 아무 작업도 수행되지 않습니다. 물론 같은 루프에서 배열 차원을 늘릴 수도 있지만 더 간단하고 효율적인 방법을 알고 싶습니다.