Вопросы от "чайника" - страница 206

 
paladin800:
Премного благодарен. С вашей подсказкой заработало! Руководствовался статьёй Как использовать торговые классы Стандартной библиотеки при написании советника и там в разделе "1.6 Класс CPositionInfo" есть myposition.Type(), который возможно надо подправить.
Спасибо. Поправлено.
 

Кому-нибудь удалось получить торговые сигналы с MQL5???

20 торговых сигналов на MQL5
20 торговых сигналов на MQL5
  • 2010.08.17
  • Sergey Gritsay
  • www.mql5.com
В этой статье вы научитесь получать торговые сигналы, необходимые для работы торговой системы. Приведены примеры формирования 20 торговых сигналов в виде отдельных пользовательских функций, которые можно использовать в написании экспертов. Для вашего удобства все функции из статьи собраны в один включаемый mqh-файл, который легко подключается к будущему эксперту.
 

Сделал такое:

CSymbolInfo   mysymbolinfo;
string ClassAsk, FuncAsk;
//---
int OnInit()
{ // ...
mysymbolinfo.Name(_Symbol);
}
void OnTick()
{ // ...
ClassAsk=DoubleToString(mysymbolinfo.Ask(),_Digits);
FuncAsk=DoubleToString(SymbolInfoDouble(_Symbol,SYMBOL_ASK),_Digits);

Comment("ClassAsk=",ClassAsk,",  FuncAsk=",FuncAsk);
// ...

Результат:


В статье Как использовать торговые классы Стандартной библиотеки при написании советника, раздел "1.2 Класс СSymbolInfo" для msymbol.Ask() написано "Используется для получения текущей цены Ask для установленного символа." Может что-то в статье надо подправить или у меня где-то ошибка?

 
paladin800:

Сделал такое:

Результат:


В статье Как использовать торговые классы Стандартной библиотеки при написании советника, раздел "1.2 Класс СSymbolInfo" для msymbol.Ask() написано "Используется для получения текущей цены Ask для установленного символа." Может что-то в статье надо подправить или у меня где-то ошибка?

Сделайте так:

CSymbolInfo   mysymbolinfo;
string ClassAsk, FuncAsk;
//---
int OnInit()
{ // ...
mysymbolinfo.Name(_Symbol);
}
void OnTick()
{ // ...
if(!mysymbolinfo.RefreshRates()) return;
ClassAsk=DoubleToString(mysymbolinfo.Ask(),_Digits);
FuncAsk=DoubleToString(SymbolInfoDouble(_Symbol,SYMBOL_ASK),_Digits);

Comment("ClassAsk=",ClassAsk,",  FuncAsk=",FuncAsk);
// ...
 
uncleVic:

Сделайте так:

Спасибо, работает. Может быть в классе перед определением цены ask (bid) вставить RefreshRates, а то новичёк формулировку "Используется для получения текущей цены ..." может понять по аналогии как в MQL4 текущий Ask находится без рефреша котировок, или в статье прямо в примере дописать, что нужен рефреш перед определением цены.
 
paladin800:
Спасибо, работает. Может быть в классе перед определением цены ask (bid) вставить RefreshRates, а то новичёк формулировку "Используется для получения текущей цены ..." может понять по аналогии как в MQL4 текущий Ask находится без рефреша котировок.
Нет.
 
uncleVic:
Нет.

 Метод  Описание
mysymbol.RefreshRates() Используется для обновления котировок. При установке нового символа вызывается автоматически.
 

 

mysymbolinfo.Name(_Symbol); 

Тогда получается, что не автоматически!

 
A100:

Метод: mysymbol.RefreshRates()

Описание: Используется для обновления котировок. При установке нового символа вызывается автоматически.

 Метод  Описание

mysymbol.RefreshRates() Используется для обновления котировок. При установке нового символа вызывается автоматически.
 

 

 

Тогда получается, что не автоматически!

Получается, что автоматически, но  только при установке нового символа.
 
Reshetov:
Получается, что автоматически, но  только при установке нового символа.
Тогда нужно писать - при смене символа
 
A100:
Тогда нужно писать - при смене символа
У Вас с головой все в порядке? А если символ еще не устанавливался, то чего Вы будете менять?