Ошибки, баги, вопросы - страница 675

 

Подскажите. Модифицировать отложенный ордер по обьему нельзя? Надо удалять старый ордер и устанавливать новый?

В стандартном классе CTrade возможности модификации отложенного ордера по обьему нет, или я ошибаюсь.

Взгляни на рынок через готовые классы
Взгляни на рынок через готовые классы
  • 2010.10.26
  • Dmitriy Skub
  • www.mql5.com
Не секрет, что большую часть информации об окружающем мире человек получает при помощи зрения. Справедливо это и в такой области как трейдинг. Новая платформа MetaTrader 5 и язык MQL5 открывают новые возможности для представления визуальной информации трейдеру. В данной статье предлагается универсальная и расширяемая система классов, которая берет на себя всю черновую работу по организации вывода произвольной текстовой информации.
 
ivandurak:

Подскажите. Модифицировать отложенный ордер по обьему нельзя? Надо удалять старый ордер и устанавливать новый?

В стандартном классе CTrade возможности модификации отложенного ордера по обьему нет, или я ошибаюсь.

Нельзя. Удаляете старый и выставляете новый.
 

CLSetKernelArg

Выставляет параметр для функции OpenCL.

bool CLSetKernelArg(
int kernel // хендл на кернел OpenCL программы
uint arg_index // номер аргумента OpenCL функции
void arg_value // исходный код значение аргумента функции
);

Параметры

kernel

[in] Хендл на кернел программы OpenCL.

arg_index

[in] Номер аргумента функции, нумерация начинается с нуля.

arg_value

[in] Значение аргумента функции.

Документация по MQL5: Основы языка / Функции / Вызов функции
Документация по MQL5: Основы языка / Функции / Вызов функции
  • www.mql5.com
Основы языка / Функции / Вызов функции - Документация по MQL5
 

Как корректно работать по нескольким валютам?

написал следующий тестовый код:

#include <Trade\SymbolInfo.mqh>
CSymbolInfo       m_sym0;
CSymbolInfo       m_sym1;
CSymbolInfo       m_sym2;

int OnInit()
{
   m_sym0.Name("EURUSD");
   m_sym1.Name("EURAUD");
   m_sym2.Name("AUDUSD");
   return(0);
}

void OnTick()
{
   m_sym0.RefreshRates();
}

Запускаю тест на EURUSD M1 все тики

и получаю падение 7-8 марта 2011 года

в логе:

PS    3    MemoryException    17:24:34    3623813120 bytes not available
OK    3    Tester    17:24:37    stopped on 15% of testing interval

 
А что с проблемой невозможности работать с кнопкой "Ответить" на форуме? Собираются исправлять? Какой-то молчок от поддержки. Хотя бы обнадёжили типа "делаем/неделаем".
 
abolk:
А что с проблемой невозможности работать с кнопкой "Ответить" на форуме? Собираются исправлять? Какой-то молчок от поддержки. Хотя бы обнадёжили типа "делаем/неделаем".
Проблему передали в сервисдеск. Соответствующие люди уже ей занимаются.
 

ilunga2012.03.21 14:272012.03.21 14:27:17

Как корректно работать по нескольким валютам?

 Один из способов ответить на этот вопрос - поискать статьи по теме. Вряд ли существует универсальный способ работы с несколькими валютами, - каждый выбирает/придумывает сам.

 В Вашем коде непонятно вот что:

#include <Trade\SymbolInfo.mqh>
CSymbolInfo       m_sym0;

int OnInit()
{
   m_sym0.Name("EURUSD");
   return(0);
}

void OnTick()
{
   m_sym0.RefreshRates();
}

Вот зачем вешать программу на EURUSD, получать тик по EURUSD и тут же просить  RefreshRates() по EURUSD?

 
Yedelkin:

Вот зачем вешать программу на EURUSD, получать тик по EURUSD и тут же просить  RefreshRates() по EURUSD?

Каприз художника.  А что жалко? :)

Проблема всё таки не в этом. В сервисдеск скорее всего, наверное что-то в стандартной библиотеке подгнило.

Документация по MQL5: Стандартная библиотека
Документация по MQL5: Стандартная библиотека
  • www.mql5.com
Стандартная библиотека - Документация по MQL5
 

 MetaDriver

 Каприз художника. А что жалко? :)

Конечно, жалко. Жалко тестер :)

Саму причину, естсессно, определить не могу, - вот и говорю хотя бы о явных "капризах художника" по отношению к мольберту/тестеру :) 

 

Можно вопрос? 

В индикаторе

int OnInit()
  {
   bool err=трали_вали_для_индикатора();
   Alert("init");
   if(err)
      return(-1);
   else
      return(0);
  }

 если вернем -1 "ненулевой код возврата означает неудачную инициализацию и генерирует событие Deinit с кодом причины деинициализации REASON_INITFAILED" 

может необходимо пытаться заново инициализировать после деинициализации?

Получается тупик и приходиться делать свою функцию инит, вызываемую OnCalculate.

Так и задумывалось? (для чего). 

Причина обращения: