//+------------------------------------------------------------------+//| 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()));
}
}
//+------------------------------------------------------------------+
这就是大致的结果。
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
'+' - 无法转换枚举 prob.mq4 14 51
要写一个服务台。
'+' - 无法转换枚举 prob.mq4 14 51
我准备写一个服务台。
你看到参考文献中ObjectSetDouble 的例子了吗?它创建了Fibo,增加了水平,并获得了水平的值。
ObjectSetDouble(chart_ID,name,OBJPROP_LEVELVALUE,i,values[i])。
设定价格。
如果是GET,它返回水平值,而不是价格。
嗯,这对我来说很有效。
笨蛋的小插曲,但请告诉我,为什么新的950版本的编辑器中的F1按钮不能工作?
谢谢你!
ObjectSetDouble(chart_ID,name,OBJPROP_LEVELVALUE,i,values[i])。
设定价格。
如果是GET,它返回水平值,而不是价格。
获取飞博锚点的价格。
你得到了菲博锚点的价格。
И?这就是0%和100%的价格。
而且你需要知道所有级别的价格。
И?这就是0%和100%的价格。
而且你需要知道所有级别的价格。
据我所知,它是通过0和100水平按比例计算的。这方面没有什么特殊的功能。
这就是大致的结果。