Как в скрипте можно перебрать программно все инструменты, которые выбраны в окне "Обзор Рынка"? - страница 5

 
eevviill:

Последний.

Я и заказчику скидывал, у него тоже так.

Пришлось  убирать

if(SymbolsTotal(true)!=ArraySize(symbols)) 

Последний это какой? Можете приложить скриншот до запуска скрипта и после? Сколько символов в маркетвотче?
 
alexey_pak:
Последний это какой? Можете приложить скриншот до запуска скрипта и после? Сколько символов в маркетвотче?

890

Это не скрипт. Это советник.

Сейчас постараяюсь сделать неполадку снова. 

 

Вот поставтье на график советник и сравните что он открывает и что есть в обзоре. 

 

Файлы:
 
eevviill:

Вот поставтье на график советник и сравните что он открывает и что есть в обзоре. 

 

 

Почему открываются ордера которые не в маркет вотч?
 
eevviill:
Почему открываются ордера которые не в маркет вотч?

Что не в MarketWatch? Ордера или символы?

У Вас есть ордер, открытый по AUDCHF. Валюта депозита наверняка USD. Для расчёта прибыли и маржевых требований на каждом тике в MarketWatch после открытия позиции по AUDCHF неявно выбираются ещё 2 пары - AUDUSD и USDCHF

 
stringo:

Что не в MarketWatch? Ордера или символы?

У Вас есть ордер, открытый по AUDCHF. Валюта депозита наверняка USD. Для расчёта прибыли и маржевых требований на каждом тике в MarketWatch после открытия позиции по AUDCHF неявно выбираются ещё 2 пары - AUDUSD и USDCHF

И? Это типа моя ошибка?

В коде всё верно. Значит ваша. 

 

P.S. Ордера. 

 
Будете убирать этот баг?
 
eevviill:
Будете убирать этот баг?

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

Ну, исправят этот баг. Проблемы это не решит. Я знаю еще варианты, когда список символов в обзоре может измениться при неконтролируемых трейдером ситуациях. 

 
Mislaid:

Ну, исправят этот баг. Проблемы это не решит.

 

Так может всё надо исправлять???

 

 

Поскольку Рустам это уже публиковал, позволю себе повторить: 

 FAQ 18.12.2012 19:13  


Передаете в функцию чистый массив, получаете в нем список символов из панели "обзор рынка"

//+------------------------------------------------------------------+

//|          Description:                                            |

//+------------------------------------------------------------------+

int SymbolsList(string &Symbols[], bool Selected)

{

   string SymbolsFileName;

   int Offset, SymbolsNumber;

   

   if(Selected) SymbolsFileName = "symbols.sel";

   else         SymbolsFileName = "symbols.raw";

   int hFile = FileOpenHistory(SymbolsFileName, FILE_BIN|FILE_READ);

   if(hFile < 0) return(-1);

   if(Selected) { SymbolsNumber = (FileSize(hFile) - 4) / 128; Offset = 116;  }

   else         { SymbolsNumber = FileSize(hFile) / 1936;      Offset = 1924; } 

   ArrayResize(Symbols, SymbolsNumber);

   if(Selected) FileSeek(hFile, 4, SEEK_SET);   

   for(int i = 0; i < SymbolsNumber; i++){

      Symbols[i] = FileReadString(hFile, 12);

      FileSeek(hFile, Offset, SEEK_CUR);

   }

   FileClose(hFile);

   return(SymbolsNumber);

}

//+------------------------------------------------------------------+

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