//+------------------------------------------------------------------+//| ObjectGetDouble.mq5 |//| Copyright 2016, MetaQuotes Software Corp. |//| https://www.mql5.com |//+------------------------------------------------------------------+#property copyright"Copyright 2016, MetaQuotes Software Corp."#property link"https://www.mql5.com"#property version"1.01"#property strict#property script_show_inputs#property description"Получение цены точки привязки и значение уровней"inputstring name_fibo="Fibo"; // имя Фибо//+------------------------------------------------------------------+//| Script program start function |//+------------------------------------------------------------------+voidOnStart()
{
double temp=0.0;
//--- цена точки привязки
temp=ObjectGetDouble(0,name_fibo,OBJPROP_PRICE,0);
Print("Цена точки привязки ",0," равна ",DoubleToString(temp,Digits()));
temp=ObjectGetDouble(0,name_fibo,OBJPROP_PRICE,1);
Print("Цена точки привязки ",1," равна ",DoubleToString(temp,Digits()));
//--- значение уровней//--- кстати, а сколько у нас Фибо-уровней ? int levels=ObjectGetInteger(0,name_fibo,OBJPROP_LEVELS);
double temp_price=0.0;
for(int i=0;i<levels;i++)
{
ResetLastError();
if(!ObjectGetDouble(ChartID(),name_fibo,OBJPROP_LEVELVALUE,i,temp_price))
Print("Error ",GetLastError());
elsePrint("Значение уровня ",i," равно ",DoubleToString(temp_price,Digits()));
}
}
//+------------------------------------------------------------------+
Y más o menos este es el resultado:
2016.01.2715:54:45.905 Test (EURUSD,M5) Цена точки привязки 0 равна 1.090462016.01.2715:54:45.905 Test (EURUSD,M5) Цена точки привязки 1 равна 1.085642016.01.2715:54:45.905 Test (EURUSD,M5) Значение уровня 0 равно 0.000002016.01.2715:54:45.905 Test (EURUSD,M5) Значение уровня 1 равно 0.236002016.01.2715:54:45.905 Test (EURUSD,M5) Значение уровня 2 равно 0.382002016.01.2715:54:45.905 Test (EURUSD,M5) Значение уровня 3 равно 0.500002016.01.2715:54:45.905 Test (EURUSD,M5) Значение уровня 4 равно 0.618002016.01.2715:54:45.905 Test (EURUSD,M5) Значение уровня 5 равно 1.000002016.01.2715:54:45.905 Test (EURUSD,M5) Значение уровня 6 равно 1.618002016.01.2715:54:45.905 Test (EURUSD,M5) Значение уровня 7 равно 2.618002016.01.2715:54:45.905 Test (EURUSD,M5) Значение уровня 8 равно 4.23600
'+' - no se puede convertir enum prob.mq4 14 51
Voy a escribir un escritorio de servicio.
'+' - no se puede convertir enum prob.mq4 14 51
Voy a escribir un servicio de atención al cliente.
¿Has visto el ejemplo deObjectSetDouble en la referencia? Crea Fibo, añade niveles y obtiene valores de niveles.
ObjectSetDouble(chart_ID,name,OBJPROP_LEVELVALUE,i,values[i]);
Fija el precio.
Si es GET, devuelve el valor del nivel, no el precio.
A mí me funciona.
Es un contratiempo, pero ¿me pueden explicar por qué no funciona el botón F1 en el editor de la nueva versión 950?
¡GRACIAS!
ObjectSetDouble(chart_ID,name,OBJPROP_LEVELVALUE,i,values[i]);
Fija el precio.
Si es GET, devuelve el valor del nivel, no el precio.
Obtiene el precio de los puntos de anclaje de Fibo:
Se obtiene el precio de los puntos de anclaje Fibo:
И? Este es el precio del 0% y del 100%.
Y hay que saber el precio de todos los niveles.
И? Este es el precio del 0% y del 100%.
Y hay que saber el precio de todos los niveles.
Por lo que sé, se calcula proporcionalmente a través de los niveles 0 y 100. No hay funciones especiales para esto.
Y más o menos este es el resultado: