Preguntas de los principiantes MQL5 MT5 MetaTrader 5 - página 409

 
mefos:
Necesitamos un asesor sencillo
Y, por regla general, estas solicitudes de autónomos siempre contienen la palabra "simple".
 
Artyom Trishkin:
Hay que comparar el número de posiciones seguidas en el tick pasado con el número en el tick actual. Si el actual es menor - guarde (recuerde) el valor actual de las posiciones rastreadas como "pasado" y procese el hecho del cierre.
Gracias. Entiendo cómo hacer el seguimiento por mí mismo. Sólo pensé que podría haber un controlador de eventos.
 
Leanid Aladzyeu:

No lo entiendo. ¿Qué valor quiere obtener?

Y lo que escribiste lo leí así

{

Apertura de un pedido;

Si la orden se abre, entonces

Pedido total = Pedido total+1;

}

) por defecto totalOrder =0, pero después de cada apertura de una orden el valor se incrementará, después de 10 aperturas (el valor será exactamente 10) el contador de todas las posiciones abiertas alguna vez (no se comprueba por tipo, por Magik y por símbolo = sumará absolutamente todas las órdenes abiertas)

Y la siguiente condición es la siguiente

si TotalPedido no es igual aTotalPedidos {}

Eso es más o menos lo que escribí)
 

Hola, ¿es posible seleccionar instrumentos de una lista de instrumentos en una variable externa en un indicador o Asesor Experto?

Tengo que teclearlas manualmente.

cadena de entrada instr_1 = "ED-9.15";

cadena de entrada instr_2 = "Si-9.15";

cadena de entrada instr_3 = "BR-8.15";

Sinceramente, Alexey.

 
twiling1983:

Hola, ¿es posible seleccionar instrumentos de una lista de instrumentos en una variable externa en un indicador o Asesor Experto?

Tengo que teclearlas manualmente.

cadena de entrada instr_1 = "ED-9.15";

cadena de entrada instr_2 = "Si-9.15";

cadena de entrada instr_3 = "BR-8.15";

Sinceramente, Alexey.

Hola. Directamente - no estoy seguro, pero puedes, por ejemplo, así:

enum ENUM_USED_SYMBOL
        {
         EURUSD = 0,
         GBPUSD,
         USDCHF,
         USDJPY
        };

const string symbols[ 4 ] = { "EURUSD", "GBPUSD", "USDCHF", "USDJPY" };
input ENUM_USED_SYMBOL = EURUSD;
string usedSymbol = "";		// Используемый символ
switch( inpSymbol )		// Всю эту конструкцию лучше обернуть в функцию, т.к. повторяться будет несколько раз
        {
         case EURUSD: usedSymbol = symbols[ 0 ]; break;
         case GBPUSD: usedSymbol = symbols[ 1 ]; break;
         case USDCHF: usedSymbol = symbols[ 2 ]; break;
         case USDJPY: usedSymbol = symbols[ 3 ]; break;
         default: Print( "Неизвестный символ!" );
        }
 
Tapochun:

Hola. No estoy seguro directamente, pero podrías, por ejemplo, hacer esto:

Gracias, pero entonces me resulta más fácil recompilar el archivo cada 3 meses y especificar nuevos futuros =)
 
twiling1983:
Gracias, pero entonces me resulta más fácil recompilar el archivo cada 3 meses y especificar nuevos futuros =)
Sí, parecen muletas, pero... como opción...
 

Hola. Cómo puedo hacer que una ventana indicadora muestre forzosamente valores hasta 10.000 decimales, sólo muestra valores hasta décimas, aunque no hay normalización en el código.

http://i.shotnes.com/u/441/0813/1vyds1z0.15y.png

Saludos Alexey.

UPD encontró la respuesta.

IndicadorSetInteger(INDICATOR_DIGITS,5);

 
twiling1983:

Hola. Cómo puedo hacer que una ventana indicadora muestre forzosamente valores hasta 10.000 decimales, sólo muestra valores hasta décimas, aunque no hay normalización en el código.

http://i.shotnes.com/u/441/0813/1vyds1z0.15y.png

Saludos Alexey.

Por favor, utilice las herramientas integradas en el foro cuando pegue imágenes:Foro: Cómo pegar una imagen
 

Por favor, dígame, cuando se utiliza la Biblioteca Estándar, cuando se obtiene el Ask y Bid, es necesario hacer mysymbol.RefreshRates();

es decir, ¿debo refrescar o para los datos de la Biblioteca no necesito refrescar?

mysymbol.RefreshRates();
 double ask =mysymbol.Ask();
 double bid =mysymbol.Bid();

o
 double ask =mysymbol.Ask();
 double bid =mysymbol.Bid();