Preguntas de un "tonto" - página 206

 
paladin800:
Muchas gracias. ¡Tu consejo hizo que funcionara! Me guié por el artículo Cómo utilizar las clases comerciales de la Biblioteca Estándar al escribir un EA y allí en la sección "1.6 Clase CPositionInfo" aparece myposition.Type(), que probablemente debería corregirse.
Gracias. Corregido.
 
20 торговых сигналов на MQL5
20 торговых сигналов на MQL5
  • 2010.08.17
  • Sergey Gritsay
  • www.mql5.com
В этой статье вы научитесь получать торговые сигналы, необходимые для работы торговой системы. Приведены примеры формирования 20 торговых сигналов в виде отдельных пользовательских функций, которые можно использовать в написании экспертов. Для вашего удобства все функции из статьи собраны в один включаемый mqh-файл, который легко подключается к будущему эксперту.
 

Hizo esto:

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:


En el artículo Cómo utilizar las clases de comercio de la Biblioteca Estándar al escribir un EA, sección "1.2 Clase CSymbolInfo" para msymbol.Ask() dice "Se utiliza para obtener el precio de venta actual para un símbolo establecido". ¿Quizás haya que corregir algo en el artículo o tenga un error en alguna parte?

 
paladin800:

Hizo esto:

Resultado:


En el artículo Cómo utilizar las clases de negociación de la Biblioteca Estándar al escribir un EA, sección "1.2 Clase CSymbolInfo" para msymbol.Ask() dice "Se utiliza para obtener el precio de venta actual para un símbolo establecido". ¿Quizás haya que corregir algo en el artículo o tenga un error en alguna parte?

Hazlo así:

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:

Hazlo:

Gracias, funciona. Tal vez insertar RefreshRates en la clase antes de la definición del precio ask (bid), de lo contrario un novato puede entender la redacción "Usado para obtener el precio actual..." por analogía con cómo en MQL4 el Ask actual es sin refresco de cotizaciones, o añadir refresh antes de la definición del precio en el artículo, o en el ejemplo debería ser escrito directamente en el artículo.
 
paladin800:
Gracias, funciona. Tal vez insertar RefreshRates en la clase antes de definir el precio ask (bid), de lo contrario un novato puede entender la frase "Se utiliza para obtener el precio actual..." por analogía con la forma en que en MQL4 se encuentra el Ask actual sin refrescar las cotizaciones.
No.
 
uncleVic:
No.

Método Descripción
misímbolo.RefreshRates() Se utiliza para actualizar las tasas. Cuando se establece un nuevo símbolo, se llama automáticamente.

mysymbolinfo.Name(_Symbol); 

Entonces no es automático.

 
A100:

Método: mysymbol.RefreshRates()

Descripción: Se utiliza para refrescar las cotizaciones. Cuando se establece un nuevo símbolo, se llama automáticamente.

Método: Descripción

Mi símbolo.RefreshRates() Se utiliza para actualizar las tasas. Cuando se establece un nuevo símbolo, se llama automáticamente.

Luego resulta que no es automático.

Parece ser automático, pero sólo cuando se inserta un nuevo carácter.
 
Reshetov:
Parece que es automático, pero sólo cuando se establece un nuevo carácter.
A continuación, deberá escribir - cuando se cambie un carácter
 
A100:
Entonces debes escribir - cuando cambies el carácter
¿Estás bien de la cabeza? Y si el símbolo aún no se ha fijado, ¿qué va a cambiar?