Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 793

 
ponochka:
В  onitit и в ontick добавлял! Изменений нет

за запросы в OnTick можно и по шапке получить ;-) то есть влететь в баны и чёрные списки

напечатайте диагностику при return(false) - будет яснее что у вас не так.

 
Maxim Kuznetsov:

за запросы в OnTick можно и по шапке получить ;-) то есть влететь в баны и чёрные списки

напечатайте диагностику при return(false) - будет яснее что у вас не так.

а что в Print писать, что бы вычислить что не так? 0_o

если писать Print(response); то выдает: 13369448

 
ponochka:

а что в Print писать, что бы вычислить что не так? 0_o

если писать Print(response); то выдает: 13369448

if (response == 0) {

   Print("Что-то пошло не так");

  // потом уже добавите диагностику из WinAPI

   return false;

}

и перед нормальным возвратом тоже напечатайте результат

Print(" всё хорошо, результат:" toStr);

return toStr;

и весь код пускать в таймере, например раз в минуту. Тренироваться на ресурсе который точно не забанит и отдаёт всё время разное, но предсказуемое, чтобы можно было проверить.

----
телепатически - если проблема действительно имеет быть,
то или инициализация неправильно проведена (не помню надо-ли WinSOCK инициализовать для InternetOpenW или нет)
или какой-то ресурс не освобождается.

 
Artyom Trishkin:

Изучить содержимое папки Include

Т.е. там всё есть? Я открывал смотрел ну да там расчёты довольно сложные пока ещё для меня.

 
Seric29:

Т.е. там всё есть? Я открывал смотрел ну да там расчёты довольно сложные пока ещё для меня.

А хотели сделать лучше :)

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Любые вопросы новичков по MQL4, помощь и обсуждение по алгоритмам и кодам

Seric29, 2019.03.26 23:32

Как можно посмотреть исходный код/библиотек функций, которые прилагаются к MQL4? Хотелось бы посмотреть на их свойства и сделать похожие или лучше, кто что знает по этому вопросу?

 
Как с помощью ArrayResize менять размер многомерного массива? Просто стандартные примеры только на одномерных массивах
 
Alexandr Sokolov:
Как с помощью ArrayResize менять размер многомерного массива? Просто стандартные примеры только на одномерных массивах

Можно изменять размер лишь первого измерения многомерного массива. Всё точно так же, как и для одномерного массива.

Массив при этом должен быть динамическим.

 
Artyom Trishkin:

Можно изменять размер лишь первого измерения многомерного массива. Всё точно так же, как и для одномерного массива.

Массив при этом должен быть динамическим.

Спасибо!

 

Всем доброго времени суток!

Потерял два часа но так ни чего и не нашёл.

Подскажите пожалуйста как в mq4, в советнике,грамотно

построить один индикатор на данных другого используя встроенные функции

да ещё что бы  всё это отображалось при тестах в подокне как положено,

например MA на данных RSI ?

 
Northwest:

например MA на данных RSI ?

#property copyright "IgorM"
#property link      "https://www.mql5.com/ru/users/igorm"
#property version   "1.00"
#property strict
#property indicator_separate_window
#property indicator_buffers 2
#property indicator_plots   2
//--- plot line1
#property indicator_label1  "RSI"
#property indicator_type1   DRAW_LINE
#property indicator_color1  clrRed
#property indicator_style1  STYLE_SOLID
#property indicator_width1  1

#property indicator_label2  "MA"
#property indicator_type2   DRAW_LINE
#property indicator_color2  clrYellow
#property indicator_style2  STYLE_SOLID
#property indicator_width2  1
//--- input parameters
input int      PeriodRSI   =  10;
input int      PeriodMA    =  12;
//--- indicator buffers
double         rsiBuffer[],maBuffer[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- indicator buffers mapping
   SetIndexBuffer(0,rsiBuffer);
   SetIndexBuffer(1,maBuffer);
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
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[])
  {
//---
   int i,limit;
   if(prev_calculated==0) limit=rates_total-1; else limit=rates_total-prev_calculated+1;
   for(i=limit; i>=0; i--)
     {
      rsiBuffer[i]=iRSI(NULL,0,PeriodRSI,PRICE_CLOSE,i);
     }
   for(i=limit; i>=0; i--)
     {
      maBuffer[i]=iMAOnArray(rsiBuffer,0,PeriodMA,0,MODE_SMA,i);
     }
  
   return(rates_total);
  }
//+------------------------------------------------------------------+
Причина обращения: