|
Startseite | Registrieren | Hilfe | Benutzerliste | Kalender | Suchen | Heutige Beiträge | Alle Foren als gelesen markieren |
Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4. |
|
Themen-Optionen | Thema durchsuchen | Ansicht |
|
|||
Also ganz streng genommen, sind ja im Grunde alle double-Werte gerade, weil man sie theoretisch alle bis in die Unendlichkeit durch 2 teilen könnte... Ok, irgendwann gehts nicht mehr, oder die Menschheit interessiert es nicht ob gerade oder ungerade, aus welchen Gründen auch immer...
Dann müsste man vielleicht den double-Wert ohne irgendwelche Rechnerei prüfen. Das Einfachste wär natürlich, einfach die letzte Stelle zu prüfen, hab aber keine Ahnung wie und in meinem MQL4-Buch stehts nicht drin. |
|
|||
Zitat:
@MA-EA: Sag mal, kann man tatsächlich alle bis in die Unendlichkeit durch 2 teilen und bis wohin geht denn die Unendlichkeit? Ich brauche jetzt echt Nachhilfe! traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis. |
|
|||
Unendlichkeit gibts wahrscheinlich gar nicht. Ohne Ende kann es keinen Anfang geben.
Aber kommen wir zum eigentlich Thema:Mathe-Nachhilfe. Die kann ich wirklich brauchen. Lacht mich gerne aus, aber ich versuche raus zu finden wie man 2.58 multipliziert mit 0.123 Einfach * funktioniert glaub ich nicht. 2.58 / 0.123 liefert irgendwie komische Ergebnisse. Vielleicht hatte ich den richtigen Rechenweg auch schon und weiß es nur nicht. Es geht darum, den EA im Anhang anhand von Margin und AccountBalance einen bestimmten %Wert des Letzteren als Lots einsetzen zu lassen. |
|
|||
Zitat:
Und für welche mathematische Grundrechenoperation steht denn / ? traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis. |
|
|||
Zitat:
Zitat:
Daß 2.58 / 0.123 ein komisches Ergebnis liefert ist klar, das ist ja auch ne Division. Zitat:
AVT |
|
|||
Darüber denk ich irgendwie schon seit Jahren nach.
Der Rechenweg ist eigentlich im Großen und Ganzen klar. Vielleicht ist der noch nicht ganz richtig, das größte Problem ist aber eben Multiplikation/Division von Werten die <1.0 sind. Code:
//============================================================================================================= // A U T O L O T S werden falsch berechnet! //============================================================================================================= ////////////////////////////////////////////////////////////////////////////////////////////////////////////// double MarReq=MarketInfo(Symbol(),MODE_MARGINREQUIRED); // nötige Margin für 1 Lot (100.000 Units) double AccBal=AccountBalance(); // momentaner Kontostand // "1 Lot" geteilt durch Mindest-Lot, um später raus zu finden, wie viel Margin für Mindest-Lot gebraucht wird. if(Min_L<1.0)double oneL_ML=1.0*Min_L; if(Min_L>=1.0)oneL_ML=1.0/Min_L; // Margin_für_1_Lot geteilt durch Ergebnis, um raus zu finden, wie viel Margin für Mindest_Lot benötigt wird. // z.B.: €1000,00 / 100 = €10,00 if( MarReq<1.0 )double MarReq_ML= MarReq * oneL_ML; // ? if( MarReq>=1.0 )MarReq_ML= MarReq / oneL_ML; // ? ////////////////////////////////////////////////////////////////////////////////////////////////////////////// // 1% vom Kontostand ausrechnen // z.B.: €1000,00 / 100% = €10,00 if( AccBal<1.0 )double OnePercAccBal = AccBal * 100.0; // ? else OnePercAccBal = AccBal / 100.0; // ? // 1% des Kontostands * Prozent, für die Lots gekauft werden sollen // z.B.: €10,00 * 2,5% = €25,00 ? if( OnePercAccBal<1.0 ){ if(Auto_Lotsize_Perc<1.0)double OnePercAccBal_AutoLotPerc = OnePercAccBal / Auto_Lotsize_Perc; // ? else OnePercAccBal_AutoLotPerc = OnePercAccBal * Auto_Lotsize_Perc;} // ? if( OnePercAccBal>=1.0 ){ if(Auto_Lotsize_Perc<1.0)OnePercAccBal_AutoLotPerc = OnePercAccBal / Auto_Lotsize_Perc; // ? else OnePercAccBal_AutoLotPerc = OnePercAccBal * Auto_Lotsize_Perc;} // ? ////////////////////////////////////////////////////////////////////////////////////////////////////////////// // double OnePercAccBalAutoLotPerc_MREQMinL = OnePercAccBal_AutoLotPerc / MarReq_ML; // z.B.: €25,00 * 0.01L = 0.025L (?) double Print_Lots = OnePercAccBalAutoLotPerc_MREQMinL * Min_L; |
|
|||
Zitat:
AVT |
|
|||
Gibts nicht Micro-Lots? Oder Trading ohne Hebel?
|
|
||||
Naja, wenn dein Account gerade bei z.b. 0,56€ steht, dann kanns ja nicht mehr lange dauern bis du Millionär bist |
|
|||
Hallo.
Brauch noch mal Mathe-Nachhilfe. Und zwar im Dividieren und Multiplizieren von Dezimalzahlen. Ich schnall das irgendwie nicht. Z.B. 0.75 dividieren durch 5 0.75 dividieren durch 0.5 5 dividieren durch 0.75 0.75 multiplizieren mit 0.5 -0.75 multiplizieren mit 5.0 Ich versteh einfach nicht so ganz, wann das Divisionszeichen ( / ) und wann das Multiplikationszeichen ( * ) verwendet werden muss. Nebenbei: Wie gesagt, was keinen Anfang hat, kann kein Ende haben, und umgedreht. Anfang eines Kreises ist vermutlich das Zentrum, sein Ende ist seine "Kante", um es mal so zu formulieren. Oder gibts irgendwas, das entsteht, indem es an nem Punkt ansetzt, und bis zu dessen anderen "Seite" ne Kurve zeichnet? Aber dazu sollte man vielleicht mal nen extra Thema anfangen. |
Lesezeichen |
Themen-Optionen | Thema durchsuchen |
Ansicht | |
|
|