Ich möchte den Profit auslesen.
Wenn ich z.b. Verschiedene Positionen mit definierten Magic_Numbers öffne funktioniert das addieren der Profite super.
Aber jetzt habe ich eine Magic_Number mit vielen Positionen und da wird der Profit nicht richtig ausgegeben.
Aber wie soll man die laufenden Positionen addieren?
okay, danke.
Es geht speziell um folgendes bsp.:
1.
magic == 100
1 Position geöffnet.
Profit wird richtig berechnet.
Funktioniert.
2.
magic == 100
3 Position geöffnet.
Profit wird nicht richtig berechnet.
Funktioniert nicht.
gibt es eine andere Möglichkeit die Offnen Positionen für eine Magic_Number zu berechnen?
Mit dem code den du hier zeigst berechnest du überhaupt keinen profit aus position.
ich weis nicht wo der code her ist, aber der ist definitiv falsch
Lies mal hier
https://www.mql5.com/en/articles/211
und hier
https://www.mql5.com/en/docs/constants/tradingconstants/positionproperties
und hier
- www.mql5.com
Immer das gleiche anstatt den Leuten mal mit fertigen Code weiter zu helfen, wird man hin und her geschickt und auch noch kritisiert, hier Janis, probier mal folgenden Code, der rechnet dir den Profit aus fuer alle offenen Trades welche die gleiche Magicnummer haben:
int BuytradesOpen=0; int SelltradesOpen=0; double ProfitSellTrades=0; double ProfitBuyTrades=0; double OpenProfitGesamt=0; //--- for(int i=PositionsTotal()-1; i>=0; i--) { ulong OrderTicket=PositionGetTicket(i); //--- string OrderSymbol=PositionGetString(POSITION_SYMBOL); if(OrderSymbol != Symbol())continue; //--- ENUM_POSITION_TYPE OrderType=(ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE); double OrderOpenPrice=PositionGetDouble(POSITION_PRICE_OPEN); double OrderClosePrice=PositionGetDouble(POSITION_PRICE_CURRENT); datetime OrderOpenTime=(datetime)PositionGetInteger(POSITION_TIME); double OrderLots=PositionGetDouble(POSITION_VOLUME); int DIGITS=(int)SymbolInfoInteger(OrderSymbol,SYMBOL_DIGITS); double POINT=(double)SymbolInfoDouble(OrderSymbol,SYMBOL_POINT); double OrderStopLoss=PositionGetDouble(POSITION_SL); double OrderTakeProfit=PositionGetDouble(POSITION_TP); double OrderProfit=PositionGetDouble(POSITION_PROFIT); double OrderSwap=PositionGetDouble(POSITION_SWAP); int Nr=int(PositionGetInteger(POSITION_MAGIC)); //--- if(OrderOpenTime>0 && OrderTicket>0 && Magicnummer==Nr) { if(OrderType==POSITION_TYPE_BUY) { BuytradesOpen++; ProfitBuyTrades+=OrderProfit; ProfitBuyTrades+=OrderSwap; } if(OrderType==POSITION_TYPE_SELL) { SelltradesOpen++; ProfitSellTrades+=OrderProfit; ProfitSellTrades+=OrderSwap; } OpenProfitGesamt+=OrderProfit; OpenProfitGesamt+=OrderSwap; } } Print("Offene Profit zu Magicnummer= ",OpenProfitGesamt);
Und jeder der aehnliche Sachen sucht findet den Code hier vielleicht wieder mit Googlesuche.
Staendig spielen die Leute den Lehrer und sagen einen alles moegliche was man wo suchen soll statt mal einfach weiter zu helfen mit bisjen Code, so nach dem Motto das waere ja zu einfach, nur weil die Leute zu faul sind richtig weiter zu helfen aber Hauptsache die haben etwas gesagt.
Immer das gleiche anstatt den Leuten mal mit fertigen Code weiter zu helfen, wird man hin und her geschickt und auch noch kritisiert, hier Janis, probier mal folgenden Code, der rechnet dir den Profit aus fuer alle offenen Trades welche die gleiche Magicnummer haben:
Und jeder der aehnliche Sachen sucht findet den Code hier vielleicht wieder mit Googlesuche.
Staendig spielen die Leute den Lehrer und sagen einen alles moegliche was man wo suchen soll statt mal einfach weiter zu helfen mit bisjen Code, so nach dem Motto das waere ja zu einfach, nur weil die Leute zu faul sind richtig weiter zu helfen aber Hauptsache die haben etwas gesagt.
Immer das gleiche von den Neueinsteigern, sie nutzen nicht die vorgefertigten Codestücke auf der Plattform.
Beschweren sich, dass ihnen nicht geholfen wird, weil sie selber ein Stück weit die Suche nicht nutzen wollen.
Jeder erwartet, dass für ihn persönlich immer der passende Code "bereitgestellt" wird.
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Hallo,
gibt es eine Möglichkeit den Profit einer undefinierte Anzahl an Positionen die unter einer Magic_Number laufen zu bestimmen.
Derzeit Öffne ich die besagten Positionen aber der Profit wird komplett falsch ausgegeben.
z.b.
MAGIC_NUMBER = 100
Position_1 = 1€
Position_1 = 1€
Position_1 = 1€
Position_1 = 1€
Profit gesamt = 2€
Für die Profitberechnung nehme ich folgenden Code:
wenn jemand eine Zielführende Lösung anbietet Zahle ich auch dafür =)
Grüße