Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools
Zurück   Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools > Metatrader 4 > Programmierung MQL4
Startseite Registrieren Hilfe Community Kalender Heutige Beiträge Suchen

Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4.

Login
Benutzername:
Kennwort:


Statistik
Themen: 4978
Beiträge: 44357
Benutzer: 7.222
Aktive Benutzer: 72
Links: 84
Wir begrüßen unseren neuesten Benutzer: Mane
Mit 2.475 Benutzern waren die meisten Benutzer gleichzeitig online (16.01.20 um 22:38).
Neue Benutzer:
vor einem Tag
- Mane
vor 2 Wochen
- AlbertZiz
vor 2 Wochen
- michak
vor 2 Wochen
- Amateur
vor 2 Wochen
- infos1982

Onlineuser
'Wer ist online' anzeigen Benutzer: 0
Gäste: 410
Gesamt: 410
Team: 0
Team:  
Benutzer:  
Freunde anzeigen

Empfehlungen

Thema geschlossen
 
Themen-Optionen Thema durchsuchen Ansicht
  #11 (permalink)  
Alt 29.11.21
AVT AVT ist offline
Elite Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 612
AVT befindet sich auf einem aufstrebenden Ast
Standard

Ich versuche es mal ganz einfach mit dem Basisanteil zu erklären.
Wenn Du etwas verdoppeln willst (oder verdreifachen oder vervielfachen), richtest Du Dich nach dem Basisanteil.
In diesem Beispiel wird der Basisanteil als Zahl für ein MinLot von 0.01 ausgerechnet.

Wenn Du 0.01 Lots handelst, dann ist das 1 Anteil MinLot.
Wenn Du 0.02 Lots handelst, dann sind das 2 Anteile MinLot.
Wenn Du 0.03 Lots handelst, dann sind das 3 Anteile MinLot. und so weiter.

Wenn Du jetzt Deine Anteile verdoppeln willst, dann sind das
bei 1 Anteil verdoppelt 2 Anteile (1*2)
bei 2 Anteilen verdoppelt 4 Anteile (2*2)
bei 3 Anteilen verdoppelt 6 Anteile (3*2). und so weiter.

Wenn Du Deine Anteile verdreifachen willst, dann sind das
bei 1 Anteil verdreifacht 3 Anteile (1*3)
bei 2 Anteilen verdreifacht 6 Anteile (2*3)
bei 3 Anteilen verdreifacht 9 Anteile (3*3). und so weiter.
Code:
1.Order: 0.01 Lots => 1.Basis: Lots/MinLot = 0.01/0.01 => 1

-. verdoppeln der 1.Order Lots heißt verdoppeln der 1.Basis
2.Order: 1.Basis 1 verdoppelt *2 = 2 => MinLot 0.01 *2 = 0.02

-. verdoppeln der 2.Order heißt verdoppeln der 2.Basis
3.Order: 2.Basis: Lots/MinLot = 0.02/0.01 => 2
         2.Basis 2 verdoppelt *2 = 4 => MinLot 0.01 *4 = 0.04
oder
-. verdreifachen der 2.Order heißt verdreifachen der 2.Basis
3.Order: 2.Basis: Lots/MinLot = 0.02/0.01 => 2
         2.Basis 2 verdreifacht *3 = 6 => MinLot 0.01 *6 = 0.06
Ich hoffe, das ist jetzt klar. AVT
  #12 (permalink)  
Alt 29.11.21
Mitglied
 
Registriert seit: Feb 2016
Beiträge: 240
RetepM befindet sich auf einem aufstrebenden Ast
Standard

Jetzt fragt sich MA_EA wahrscheinlich, was, wo, wer überall rumspinnt :-)
  #13 (permalink)  
Alt 29.11.21
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 2.735
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von MA-EA Beitrag anzeigen
Sorry, bin in Mathe ne echte Pfeife.

Da steh ich auf dem Schlauch.
Da wird die Mathematik von @AVT weit übers Ziel schießen.

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
  #14 (permalink)  
Alt 02.12.21
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 1.178
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Wenn immer wieder irgendwelche OrderLots() miteinander und mit anderen Werten multipliziert werden, kommen irgendwann Ergebnisse raus, die sich nicht einfach so als Lot-Wert nutzen lassen. Bzw. dem MT4 überhaupt nicht passen. Die wirken sich dann auch auf weitere Berechnungen/Vergleiche aus.

Man müsste wohl nur die jeweiligen OrderLots() * Lots_Multi rechnen. Aber wie das jeweilige Zwischen-Ergebnis zwischen speichern, ohne das unbrauchbare Lot-Werte rauskommen?

Der EA hat an 2 Tagen hintereinander mit EURUSD Gewinn gemacht. Nicht besonders viel, aber wie gesagt praktisch ohne Verlust-Risiko. Solange diese Lot-Berechnungen eben brauchbare Lot-Werte ergeben haben.

Code:
//      ...Lots für NextSel-by-NextBuy berechnen:

        L_LO=1.0;
        for(m=OrdersTotal()-1;m>=0;m--){
        if(OrderSelect(m,SELECT_BY_POS)){
        if(OrderSymbol()==Symbol()){
        
          if( OrderMagicNumber()==MN_NeBuy ){

            Lots_Sel = L_LO * OrderLots() * Lots_Multi;

            L_LO = Lots_Sel;

         }}}}
Code:
//        ...Lots für NextBuy-by-NextSel berechnen:

          L_SH=1.0;
          for(m=OrdersTotal()-1;m>=0;m--){
          if(OrderSelect(m,SELECT_BY_POS)){
          if(OrderSymbol()==Symbol()){
          
            if( OrderMagicNumber()==MN_NeSel ){

              Lots_Buy = L_SH * OrderLots() * Lots_Multi;

              L_SH = Lots_Buy;
            
          }}}}
Angehängte Dateien
Dateityp: mq4 LoShAL_Ti_v5.mq4 (39,3 KB, 3x aufgerufen)

Geändert von MA-EA (02.12.21 um 13:39 Uhr)
  #15 (permalink)  
Alt 03.12.21
Benutzerbild von Indikator-Trading
Premium Mitglied
 
Registriert seit: May 2020
Ort: Bielefeld
Beiträge: 345
Indikator-Trading befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von MA-EA Beitrag anzeigen
Der EA hat an 2 Tagen hintereinander mit EURUSD Gewinn gemacht. Nicht besonders viel, aber wie gesagt praktisch ohne Verlust-Risiko.
Hör endlich auf hier irgend so einen Dreck in die Welt raus zu lassen!

"praktisch ohne Verlust Risiko" -> DAS GIBT ES NICHT

und es wird es auch NIE GEBEN.
  #16 (permalink)  
Alt 05.12.21
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 1.178
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Dann halt mit geringem Verlust-Risiko.

Wenn ich das richtig sehe, zieht er von OrdersTotal() 1 ab und geht dann alle Orders von der mit dem höchsten "Stellen-Wert" an zu der mit dem kleinsten "Stellen-Wert" durch. Sozusagen von der Neuesten zur Ältesten. Aber ich vermute, dass das in dem Fall anders rum sein muss. Er müsste mit der ältesten Order anfangen und mit der Neuesten aufhören. Wie müsste man das proggen?
Code:
        Opened_Buy=NULL;
        for(m=OrdersTotal()-1;m>=0;m--){
        if(OrderSelect(m,SELECT_BY_POS)){
        if(OrderSymbol()==Symbol()){
          if( OrderMagicNumber()==MN_NeBuy ){
            ...}}}}
Angehängte Dateien
Dateityp: mq4 LoShAL_Ti_v6_PRINT.mq4 (41,4 KB, 2x aufgerufen)
  #17 (permalink)  
Alt 06.12.21
Benutzerbild von Indikator-Trading
Premium Mitglied
 
Registriert seit: May 2020
Ort: Bielefeld
Beiträge: 345
Indikator-Trading befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von MA-EA Beitrag anzeigen
Dann halt mit geringem Verlust-Risiko.
Martingale hat immer ein Risiko von einem Totalverlust, und der ist manchmal ganz schnell erreicht!



Zitat:
Zitat von MA-EA Beitrag anzeigen
Wenn ich das richtig sehe, zieht er von OrdersTotal() 1 ab und geht dann alle Orders von der mit dem höchsten "Stellen-Wert" an zu der mit dem kleinsten "Stellen-Wert" durch. Sozusagen von der Neuesten zur Ältesten. Aber ich vermute, dass das in dem Fall anders rum sein muss. Er müsste mit der ältesten Order anfangen und mit der Neuesten aufhören. Wie müsste man das proggen?
In dem du nicht runter zählst, sondern rauf??
Du wirst doch wohl noch die Zählweise einer For-Schleife umdrehen können oder?
  #18 (permalink)  
Alt 06.12.21
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 1.178
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Indikator-Trading Beitrag anzeigen
Martingale hat immer ein Risiko von einem Totalverlust, und der ist manchmal ganz schnell erreicht!

In dem du nicht runter zählst, sondern rauf??
Du wirst doch wohl noch die Zählweise einer For-Schleife umdrehen können oder?
Es ist schon ne eigenartige, umstrittene "Strategie". Aber wie gesagt, wenn sie am Ende keinen Gewinn macht, dann soll das einfach mein Problem sein. Ich erhoffe mir hier bloß Hilfe beim Proggen des EAs.


Zählweise einer For-Loop umdrehn klingt eigentlich einfach, ist es aber vermutlich nicht. Momentan ist mir nur klar, dass am Ende sowas wie
Code:
... ; m++ ) { ...
stehn müsste, aber davor? Kein Schimmer. Und dann gibts glaub ich noch das Risiko, dass die in "Aufwärts-Zählen-Form" nie aufhört zu zählen.
  #19 (permalink)  
Alt 06.12.21
Benutzerbild von Indikator-Trading
Premium Mitglied
 
Registriert seit: May 2020
Ort: Bielefeld
Beiträge: 345
Indikator-Trading befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von MA-EA Beitrag anzeigen
Ich erhoffe mir hier bloß Hilfe beim Proggen des EAs
Und zum 1000 mal:
MACH EINEN PROGRAMMIERKURS oder LASS ES VON EINEM PROGRAMMIEREN!

Das ist, als ob man dir erklären muss beim Autofahren das Lenkrad nach links drehen zu müssen, wenn du nach links fahren willst. Mehr Grundlagenwissen geht bald nicht mehr.

Code:
for(m=0;m<OrdersTotal();m++)
Thema geschlossen

Lesezeichen


Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus




Alle Zeitangaben in WEZ +2. Es ist jetzt 05:08 Uhr.





Suchmaschine - Reisen - Wavesnode - Facebook Forum - Spam Firewall
-----------------------------------------------------------------------------------------------------------------------------
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Powered by vBCMS® 2.7.0 ©2002 - 2024 vbdesigns.de
SEO by vBSEO 3.6.1
Copyright ©2009 - 2023 by Expert-Advisor.com - Das Metatrader Forum
MetaTrader bzw. MetaTrader 4 und MetaTrader 5 sind eingetragene Marken der MetaQuotes Software Corp.
-----------------------------------------------------------------------------------------------------------------------------