Hier sind die Wunder des Testens eines EA-Programms in MT5 (siehe Bild-Datei)...Kann es eine positive Äquivalenz mit einem negativen Saldo geben ? und wann ist der Saldo negativ ? Bevor ich mich Trading Nation zuwandte, habe ich meine Meinung oft geändert und bin noch nicht dazu gekommen... Ich glaube, es ist Zeit, etwas zu schlafen)
Wenn jemand an dem offenen Code und dem Set interessiert ist, lasst es mich wissen ? - Ich werde sie auf jeden Fall veröffentlichen. Ich habe begonnen, MT5 mit Hedging und jetzt zu meistern, - Wunder, obwohl)
Keine Wunder. Ich habe eine offene Position mit großem Überschuss und eine geschlossene Position mit einem Verlust, der mein Guthaben übersteigt. Ich verliere nicht, weil ich genug Mittel habe, um eine offene Position zu halten.
Artyom Trishkin: Es gibt keine Wunder. Es gibt offene Positionen mit einem großen Überschuss, und es gibt eine geschlossene Position mit einem Verlust, der größer ist als die Bilanzsumme. Es gibt keinen Nachteil, da genügend Mittel vorhanden sind, um die offenen Positionen zu halten.
Wenn ich wie bisher schließe, wird es gegenüber lackiert ))
Habe schon alles versucht, gibt immer noch Fehler 2016.04.15 13:17:24 Core 1 2016.03.29 09:00:00 failed close position #64 buy 0.81 EURUSD by position #0 [Invalid request]
Welche Felder müssen ausgefüllt werden und welche nicht? Ich denke, es spielt keine Rolle, ob die eröffnete Position kurz oder lang ist.
//+------------------------------------------------------------------+//| Закрытие позиции по типу |//+------------------------------------------------------------------+void PositionClose(double lot, int P_type,long id)
{
Print("Вход в функцию Закрытие позиции по типу !");
ZeroMemory(mrequest); ZeroMemory(mresult); // обнуляем значения mrequest, mresult//--- Получить текущее значение котировки в структуру типа MqlTickif(!SymbolInfoTick(_Symbol,latest_price))
{
Alert("Ошибка получения последних котировок - ошибка:",GetLastError(),"!!");
return;
}
//--- формируем торговый запрос
mrequest.action = TRADE_ACTION_CLOSE_BY; // закрыть позицию встречной
mrequest.order = id;
// mrequest.action = TRADE_ACTION_DEAL; // немедленное исполнение// mrequest.price = NormalizeDouble(latest_price.bid,_Digits); // последняя цена ask// mrequest.sl = 0; // Stop Loss// mrequest.tp = 0; // Take Profit
mrequest.symbol = _Symbol; // символ
mrequest.volume = lot; // количество лотов для торговли// mrequest.magic = MAGIC; // Magic Number// if (P_type == 0) mrequest.type = ORDER_TYPE_SELL; // проверяем тип позиции// if (P_type == 1) mrequest.type = ORDER_TYPE_BUY;
mrequest.type = ORDER_TYPE_CLOSE_BY;
mrequest.type_filling = ORDER_FILLING_FOK; // тип исполнения ордера - все или ничего
mrequest.deviation=10; // проскальзывание от текущей ценыif( OrderSend(mrequest,mresult)>0) // если значение отосланного ордера не ноль, то
{ if(mresult.retcode==10009 || mresult.retcode==10008)
Print(" позиция закрыта !");
} else {
Print(ResultRetcodeDescription(mresult.retcode));
return;
}
}
Ich teste einen Multicurrency Expert Advisor und möchte im Visualizer alle Fenster für alle gehandelten Währungspaare sehen.
In der Visualizer-Hilfe wird im Abschnitt "Ansicht" des Visualizer-Hauptmenüs der Befehl "Diagramm" erwähnt, der anscheinend zum Öffnen neuer Diagramme verwendet wird. Aber aus irgendeinem Grund habe ich den Befehl "Chart" gar nicht und kann dementsprechend auch keine Charts von zusätzlichen Paaren öffnen. Was ist hier das Problem?
Wenn ich wie bisher schließe, wird es gegenüber lackiert ))
Habe schon alles versucht, gibt immer noch Fehler 2016.04.15 13:17:24 Core 1 2016.03.29 09:00:00 failed close position #64 buy 0.81 EURUSD by position #0 [Invalid request]
Welche Felder müssen ausgefüllt werden und welche nicht? Soweit ich das verstanden habe, spielt es keine Rolle, ob es sich um eine Long- oder Short-Position handelt.
Verwenden Sie minimalen Code - verwenden Sie die Standardbibliothek:
ES 009:12:21.189 Trade 2016.04.1400:00:30 instant sell 0.01 EURUSD at 1.12728 (1.12728 / 1.12736 / 1.12728)
IL 009:12:21.189 Trades 2016.04.1400:00:30 deal #2 sell 0.01 EURUSD at 1.12728 done (based on order #2)
OP 009:12:21.189 Trade 2016.04.1400:00:30 deal performed [#2 sell 0.01 EURUSD at 1.12728]
NF 009:12:21.189 Trade 2016.04.1400:00:30 order performed sell 0.01 at 1.12728 [#2 sell 0.01 EURUSD at 1.12728]
GJ 009:12:21.192 TestEA (EURUSD,H1) 2016.04.1400:00:30 CTrade::OrderSend: instant sell 0.01 EURUSD at 1.12728 [done at 1.12728]
KH 009:12:21.192 Trade 2016.04.1400:00:31 instant buy 0.02 EURUSD at 1.12736 (1.12728 / 1.12736 / 1.12728)
OD 009:12:21.192 Trades 2016.04.1400:00:31 deal #3 buy 0.02 EURUSD at 1.12736 done (based on order #3)
GI 009:12:21.193 Trade 2016.04.1400:00:31 deal performed [#3 buy 0.02 EURUSD at 1.12736]
LM 009:12:21.193 Trade 2016.04.1400:00:31 order performed buy 0.02 at 1.12736 [#3 buy 0.02 EURUSD at 1.12736]
NS 009:12:21.193 TestEA (EURUSD,H1) 2016.04.1400:00:31 CTrade::OrderSend: instant buy 0.02 EURUSD at 1.12736 [done at 1.12736]
OP 009:12:21.193 TestEA (EURUSD,H1) 2016.04.1400:00:32 Вход в функцию Закрытие позиции по типу !
GI 009:12:21.193 Trade 2016.04.1400:00:32 close position #2 sell 0.01 EURUSD by position #3 buy 0.02 EURUSD (1.12728 / 1.12736 / 1.12728)
OM 009:12:21.193 Trades 2016.04.1400:00:32 deal #4 buy 0.01 EURUSD at 1.12736 done (based on order #4)
RK 009:12:21.193 Trades 2016.04.1400:00:32 deal #5 sell 0.01 EURUSD at 1.12728 done (based on order #4)
EF 009:12:21.193 TestEA (EURUSD,H1) 2016.04.1400:00:32 CTrade::OrderSend: unknown action 10 [done]
EI 009:12:21.423 Trade 2016.04.1423:59:59 position closed due end of test at 1.12663 [#3 buy 0.01 EURUSD 1.12736]
JG 009:12:21.423 Trades 2016.04.1423:59:59 deal #6 sell 0.01 EURUSD at 1.12663 done (based on order #5)
HN 009:12:21.423 Trade 2016.04.1423:59:59 deal performed [#6 sell 0.01 EURUSD at 1.12663]
IS 009:12:21.423 Trade 2016.04.1423:59:59 order performed sell 0.01 at 1.12663 [#5 sell 0.01 EURUSD at 1.12663]
Hier sind die Wunder des Testens eines EA-Programms in MT5 (siehe Bild-Datei)...Kann es eine positive Äquivalenz mit einem negativen Saldo geben ? und wann ist der Saldo negativ ? Bevor ich mich Trading Nation zuwandte, habe ich meine Meinung oft geändert und bin noch nicht dazu gekommen... Ich glaube, es ist Zeit, etwas zu schlafen)
Wenn jemand an dem offenen Code und dem Set interessiert ist, lasst es mich wissen ? - Ich werde sie auf jeden Fall veröffentlichen. Ich habe begonnen, MT5 mit Hedging und jetzt zu meistern, - Wunder, obwohl)
Es gibt keine Wunder. Es gibt offene Positionen mit einem großen Überschuss, und es gibt eine geschlossene Position mit einem Verlust, der größer ist als die Bilanzsumme. Es gibt keinen Nachteil, da genügend Mittel vorhanden sind, um die offenen Positionen zu halten.
Können Sie mir bitte sagen, was mein Fehler ist.
for(int i=0;i<N_Sell;i++) printf("OpenSellTime[%d] = %G",i,TimeToString(OpenSellTime[i],TIME_DATE|TIME_MINUTES)," PriceOpenSell[%d] = %G",i,PriceOpenSell[i]);
Das Datum aus dem OpenSellTime-Array wird nicht gedruckt und auch nicht der zweite Teil des Ausdrucks - PriceOpenSell.
Und ich kann keineprintf-Befehle wie%G und%d finden.
Guten Tag allerseits)
Dies ist eine Frage für einen Dummy in der Programmierung...
Ich versuche, einen EA für ein neues Build zu kompilieren. Der Compiler gibt mir viele verschiedene Fehler...
Hier ist einer von ihnen
if(oppositedelete){löschen( OP_SELLSTOP);löschen( OP_SELLLIMIT);}
In diesem Codefragment sind 2 Fehler rot markiert:'(' - Objektzeiger erwartet
Nachdem ich ein wenig über das Thema des Fehlers gelesen habe, habe ich verstanden, dass der Name reserviert ist und ich ihn ersetzen muss...
Die Frage ist also, womit man sie ersetzen kann?
Guten Tag allerseits)
Dies ist eine Frage für einen Dummy in der Programmierung...
Ich versuche, einen EA für ein neues Build zu kompilieren. Der Compiler gibt mir viele verschiedene Fehler...
Hier ist einer von ihnen
if(oppositedelete){löschen( OP_SELLSTOP);löschen( OP_SELLLIMIT);}
In diesem Codefragment sind 2 Fehler rot markiert:'(' - Objektzeiger erwartet
Nachdem ich ein wenig über das Thema des Fehlers gelesen habe, habe ich verstanden, dass der Name reserviert ist und ich ihn ersetzen muss...
Die Frage ist also, womit man sie ersetzen kann?
Im Code gibt es folgende Zeile
Print (";OpenSellTime - ",TimeToString(OpenSellTime[N_Sell],TIME_DATE|TIME_MINUTES), ";PriceOpenSell", PriceOpenSell[N_Sell]);
Warum erhalte ich diesen Text in der Ausgabe?
OpenSellTime - 2015.12.01 11:15
wobei ";" und der zweite Teil"PriceOpenSell" lautet?
Im Code gibt es folgende Zeile
Print (";OpenSellTime - ",TimeToString(OpenSellTime[N_Sell],TIME_DATE|TIME_MINUTES), ";PriceOpenSell", PriceOpenSell[N_Sell]);
Warum erhalte ich diesen Text in der Ausgabe?
OpenSellTime - 2015.12.01 11:15
Wo ist das ";" und der zweite Teil"PriceOpenSell"?
entfernt ";" - gearbeitet.
Die Frage nach printf bleibt...
Wie sende ich korrekt einen Antrag auf Schließung einer Gegenposition?
Wenn ich wie bisher schließe, wird es gegenüber lackiert ))
Habe schon alles versucht, gibt immer noch Fehler 2016.04.15 13:17:24 Core 1 2016.03.29 09:00:00 failed close position #64 buy 0.81 EURUSD by position #0 [Invalid request]
Welche Felder müssen ausgefüllt werden und welche nicht? Ich denke, es spielt keine Rolle, ob die eröffnete Position kurz oder lang ist.
Hallo, Frage zum Tester.
Ich teste einen Multicurrency Expert Advisor und möchte im Visualizer alle Fenster für alle gehandelten Währungspaare sehen.
In der Visualizer-Hilfe wird im Abschnitt "Ansicht" des Visualizer-Hauptmenüs der Befehl "Diagramm" erwähnt, der anscheinend zum Öffnen neuer Diagramme verwendet wird. Aber aus irgendeinem Grund habe ich den Befehl "Chart" gar nicht und kann dementsprechend auch keine Charts von zusätzlichen Paaren öffnen. Was ist hier das Problem?
Wie sende ich korrekt einen Antrag auf Schließung einer Gegenposition?
Wenn ich wie bisher schließe, wird es gegenüber lackiert ))
Habe schon alles versucht, gibt immer noch Fehler 2016.04.15 13:17:24 Core 1 2016.03.29 09:00:00 failed close position #64 buy 0.81 EURUSD by position #0 [Invalid request]
Welche Felder müssen ausgefüllt werden und welche nicht? Soweit ich das verstanden habe, spielt es keine Rolle, ob es sich um eine Long- oder Short-Position handelt.
Verwenden Sie minimalen Code - verwenden Sie die Standardbibliothek:
Agent Log: