Perguntas de um "boneco" - página 206

 
paladin800:
Muito obrigado. A sua dica fê-lo funcionar! Fui guiado pelo artigo Como utilizar as classes de comércio da Biblioteca Standard ao escrever uma EA e lá na secção "1.6 CPositionInfo Class" existe myposition.Type(), que provavelmente deve ser corrigido.
Obrigado. Corrigido.
 

Alguém conseguiu obter sinais de negociação da MQL5???

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

Fez isto:

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);
// ...

Resultado:


No artigo Como utilizar as classes de comércio da Biblioteca Standard ao escrever uma EA, secção "1.2 Class CSymbolInfo" para msymbol.Ask() diz "Usado para obter o preço actual Ask para um símbolo de conjunto". Talvez algo no artigo precise de ser corrigido ou eu tenho um erro algures?

 
paladin800:

Fez isto:

Resultado:


No artigo Como utilizar as classes comerciais da Biblioteca Standard ao escrever um EA, secção "1.2 Class CSymbolInfo" para msymbol.Ask() diz "Usado para obter o preço actual Ask para um símbolo de conjunto". Talvez algo no artigo precise de ser corrigido ou eu tenho um erro algures?

Faça-o desta forma:

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:

Faça-o:

Obrigado, funciona. Talvez para inserir RefreshRates na classe antes de perguntar (licitar) a definição de preço, caso contrário um novato pode compreender a expressão "Usado para obter o preço actual..." por analogia com a forma como na MQL4 o Ask actual é sem refresh das cotações, ou adicionar refresh antes da definição de preço no artigo, ou no exemplo que deve ser escrito directamente no artigo.
 
paladin800:
Obrigado, funciona. Talvez para inserir RefreshRates na classe antes de definir o preço ask (bid), caso contrário um novato pode compreender a expressão "Usado para obter o preço actual..." por analogia com a forma como na MQL4 o ask actual é localizado sem actualização de cotações.
Não.
 
uncleVic:
Não.

Método Descrição
Símbolo místico.RefreshRates() Usado para refrescar as taxas. Quando um novo símbolo é definido, é chamado automaticamente.

mysymbolinfo.Name(_Symbol); 

Então não é automático!

 
A100:

Método: mysymbol.RefreshRates()

Descrição: Usado para refrescar citações. Quando um novo símbolo é definido, é chamado automaticamente.

Método: Descrição

Mysymbol.RefreshRates() Usado para refrescar as taxas. Quando um novo símbolo é definido, é chamado automaticamente.

Acontece então que não é automático!

Parece ser automático, mas apenas quando um novo carácter é inserido.
 
Reshetov:
Parece ser automático, mas apenas quando um novo carácter é definido.
Deve então escrever - quando um carácter é alterado
 
A100:
Depois deve escrever - quando mudar o carácter
Está bem da cabeça? E se o símbolo ainda não tiver sido definido, o que vai mudar?