Haben Sie das Beispiel vonObjectSetDouble in der Hilfe gesehen? Es enthält die Erstellung von Fibo, das Hinzufügen von Ebenen und das Abrufen der Werte der Ebenen.
Karputov Vladimir: Haben Sie das Beispiel fürObjectSetDouble in der Referenz gesehen? Es erstellt Fibo, fügt Levels hinzu und ermittelt die Werte der Levels.
//+------------------------------------------------------------------+//| 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()));
}
}
//+------------------------------------------------------------------+
Und das ist in etwa das Ergebnis:
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
'+' - kann nicht konvertieren enum prob.mq4 14 51
Ich werde einen Servicedesk schreiben.
'+' - kann nicht konvertieren enum prob.mq4 14 51
Ich werde einen Servicedesk schreiben.
Haben Sie das Beispiel fürObjectSetDouble in der Referenz gesehen? Es erstellt Fibo, fügt Levels hinzu und ermittelt die Werte der Levels.
ObjectSetDouble(diagram_ID,name,OBJPROP_LEVELVALUE,i,values[i]);
Legt den Preis fest.
Bei GET wird der Wert der Stufe zurückgegeben, nicht der Preis.
Hmm. Bei mir funktioniert es.
Dummy's hiccup, aber klären Sie mich auf, warum die F1-Taste im Editor der neuen 950er Version nicht funktioniert?
DANKESCHÖN!
ObjectSetDouble(diagram_ID,name,OBJPROP_LEVELVALUE,i,values[i]);
Legt den Preis fest.
Bei GET wird der Wert der Stufe zurückgegeben, nicht der Preis.
Ermittelt den Preis der Fibo-Ankerpunkte:
Sie erhalten den Preis für die Fibo-Ankerpunkte:
И? Dies ist der Preis von 0% und 100%.
Und Sie müssen den Preis für alle Stufen kennen.
И? Dies ist der Preis von 0% und 100%.
Und Sie müssen den Preis für alle Stufen kennen.
Soweit ich weiß, wird sie anteilig über die Stufen 0 und 100 berechnet. Hierfür gibt es keine speziellen Funktionen.
Und das ist in etwa das Ergebnis: