Справка по языку MQL5 - страница 59

 
nen >>:

Спасибо. Попробую так. Я ранее пробовал примерно так:

long t;

SeriesInfoInteger(Symbol(),Period_M1,BARS_SERIES_FIRSTDATE,t));
Print("time =", (datetime)t);


Проверил, есть ошибка у нас. Исправим,спасибо.

 

Хм...

Если бы так:

long t=0;

...

и получив результат принта выявить "неисправность" оказалось легче...

2009.10.06 16:31:47 000 (EURJPY,H1) time = 0
без приведения
(datetime)t, просто t возвращалось:

2009.10.06 16:31:18 000 (EURJPY,H1) time = 8975918170410476192

что явно перебор...


Спасибо всем за наводку как и где копать в случае чего!!!

Ибо лишний раз напрягать щас не хочется...

 
kombat писал(а) >>

Хм...

Если бы так:

long t=0;

...

и получив результат принта выявить "неисправность" оказалось легче...

2009.10.06 16:31:47 000 (EURJPY,H1) time = 0
без приведения
(datetime)t, просто t возвращалось:

2009.10.06 16:31:18 000 (EURJPY,H1) time = 8975918170410476192

что явно перебор...

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

 
Rosh >>:


для команды

OrderSend


в справке явно не хватает примеров!




//
// MT5 - закрыть позицию
//
void CYurazTrade::ClosePosition(string sSymbol,int ip)
  {
   MqlTradeRequest request; // структура запроса
   MqlTradeResult result; // структура ответа



   request.symbol = sSymbol;
   request.volume = PositionGetDouble( POSITION_VOLUME );
   request.action=TRADE_ACTION_MARKET; // операция с рынка
   request.tp=0;
   request.sl=0;
   request.deviation=(ulong) ((SymbolInfoDouble(sSymbol,SYMBOL_ASK)-SymbolInfoDouble(sSymbol,SYMBOL_BID))/SymbolInfoDouble(sSymbol,SYMBOL_POINT)) ; // по спреду 
   request.type_filling=ORDER_FILLING_CANCEL;

if (request.volume > 9) // пока не смог решить проблему с request
   request.volume=9;


   if(PositionGetInteger(POSITION_TYPE)==POSITION_TYPE_BUY) // выбранная позиция BUY ?
     {
      request.type=ORDER_TYPE_SELL;
      request.price=SymbolInfoDouble(sSymbol,SYMBOL_BID);  // закроем ее SELL
     }
   if(PositionGetInteger(POSITION_TYPE)==POSITION_TYPE_SELL)
     {
      request.type=ORDER_TYPE_BUY;
      request.price=SymbolInfoDouble(sSymbol,SYMBOL_ASK);
     }
   OrderSend(request,result);
   LastCloseCode=result.retcode; // 

  }



 
Rosh >>:


в справке не нашел как прочитать время работы инструмента


 

Обновлена справка по MQL5 на первой странице ветки. Изменена функция OnDeinit() - теперь в качестве параметра ей передается код . Поправлено описание раздела "Файловые операции".

 

description

string

краткое текстовое описание mql5-программы. Может присутствовать несколько description, каждый из которых описывает одну строку текста. Общая длина всех description не может превышать 511 символов с учетом переводов строк


Следует несколько дополнить и поправить...

1. перевод строк окно не понимает, поэтому инфа излишня

2. если окно не меняет размеров, то в одну строку влазит 32 символа

Больше не будет иметь смысла ввиду ухода хвоста строки "за бугор".


доп:

Сорри... 33 символа...

#property description "ЩЩЩЩЩЩЩЩЩЩЩЩЩЩЩЩЩЩЩЩЩЩЩЩЩЩЩЩЩЩЩ32"

если снова не ошибся в подсчёте...

)))


доп2.

аааа......

это-ж длинная строка...

потому и с переносами были "проблемы".

 

Не существенно конечно, но все же. В справке, на вкладке "Указатель", написано ORDER_PRICE_TRIGGER, а в свойствах ордеров такого нет, а по смыслу подходит только ORDER_PRICE_STOPLIMIT. Поясните, это одно и тоже или будут доработки.

 
fwiq >>:

Не существенно конечно, но все же. В справке, на вкладке "Указатель", написано ORDER_PRICE_TRIGGER, а в свойствах ордеров такого нет, а по смыслу подходит только ORDER_PRICE_STOPLIMIT. Поясните, это одно и тоже или будут доработки.

Приведите, пожалуйста, скриншот страницы, о которой Вы пишете. Я не нашел.

 

Извиняюсь, сразу надо было сделать, но вот на картинке Выделенным текстом.