Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Ja, genau das habe ich getan.
für praktische Zwecke sollte ich wahrscheinlich den schlimmsten Fall annehmen
Es gibt Zahlen von StartN bis einschließlich EndN.
Sie müssen Kombinationen von CountN in jedem
Ich habe dieses Skript für die Anzahl der Zahlen in einer 3er-Kombination geschrieben:
die ausgibt:
2020.07.12 21:48:47.763 sProbCandlComb XAUUSD...,H4: 111
2020.07.12 21:48:47.763 sProbCandlComb XAUUSD...,H4: 110
2020.07.12 21:48:47.763 sProbCandlComb XAUUSD...,H4: 101
2020.07.12 21:48:47.762 sProbCandlComb XAUUSD...,H4: 100
2020.07.12 21:48:47.762 sProbCandlComb XAUUSD...,H4: 011
2020.07.12 21:48:47.762 sProbCandlComb XAUUSD..,H4: 010
2020.07.12 21:48:47.762 sProbCandlComb XAUUSD..,H4: 001
2020.07.12 21:48:47.762 sProbCandlComb XAUUSD...,H4: 000
Ich bin verwirrt, wie kann ich es mit einer bestimmten Anzahl von CountN funktionieren lassen?
Die binäre Darstellung einer Zahl...
Binäre Darstellung einer Zahl...
Das ist nicht der Punkt, es sind nur die Parameter, die ich genommen habe, von 0 bis einschließlich 1.
Nehmen Sie [0;2]
und Sie erhalten:
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD...,H4: 222
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD...,H4: 221
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD...,H4: 220
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD...,H4: 212
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD...,H4: 211
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD...,H4: 210
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD...,H4: 202
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD...,H4: 201
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD...,H4: 200
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD...,H4: 122
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD...,H4: 121
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD...,H4: 120
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD...,H4: 112
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD...,H4: 111
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD...,H4: 110
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD...,H4: 102
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD...,H4: 101
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD...,H4: 100
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD..,H4: 022
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD..,H4: 021
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD..,H4: 020
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD..,H4: 012
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD...,H4: 011
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD..,H4: 010
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD..,H4: 002
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD..,H4: 001
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD...,H4: 000
Es gibt Zahlen von StartN bis einschließlich EndN.
Ich muss Kombinationen von CountN in jedem
Ich bin so verwirrt, wie soll das mit einer bestimmten Anzahl von CountN funktionieren?
Ich glaube, ich habe das schon einmal gemacht, hier ist das Thema
https://www.mql5.com/ru/forum/335077
Das ist es nicht, es ist nur so, dass ich Parameter von 0 bis einschließlich 1 genommen habe.
take [0;2]
und wir erhalten:
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD...,H4: 222
2020.07.12 22:16:57.703 sProbCandlComb XAUUSD...,H4: 221
...
Das Problem besteht also darin, die Nummer der Hauptschleife in ein anderes Zahlensystem umzuwandeln und eine Korrektur für StartN vorzunehmen
Das Problem besteht also darin, die Nummer der Hauptschleife in ein anderes Zahlensystem umzuwandeln und eine Korrektur für StartN vorzunehmen
Kann ich den Code haben?
Ich glaube, ich habe das schon einmal gemacht, hier ist das Thema
https://www.mql5.com/ru/forum/335077
Nicht alles ist in Ordnung mit dem Code, aber es scheint zu sein, was ich brauche, ich werde es reparieren, ich werde es hier posten.
jetzt erzeugt der Code nicht die Kombinationen in voller Länge
Ich glaube, ich habe das schon einmal gemacht, hier ist das Thema
https://www.mql5.com/ru/forum/335077
Es hat nicht das gebracht, was ich brauchte, der Code hat zu viele Schleifen mit unklarem Zweck.
Meine Lösung ist diese:
Ich gehe davon aus, dass dieser Code mit so wenigen Iterationen wie möglich erstellt wird.
Ergebnis bei [0;1] Zahlen mit Zahl in Zeile 3:
2020.07.13 01:21:41.037 sProbCandlComb EURUSD...,M5: 111
2020.07.13 01:21:41.037 sProbCandlComb EURUSD..,M5: 011
2020.07.13 01:21:41.037 sProbCandlComb EURUSD..,M5: 101
2020.07.13 01:21:41.037 sProbCandlComb EURUSD..,M5: 001
2020.07.13 01:21:41.037 sProbCandlComb EURUSD..,M5: 110
2020.07.13 01:21:41.037 sProbCandlComb EURUSD..,M5: 010
2020.07.13 01:21:41.037 sProbCandlComb EURUSD..,M5: 100
2020.07.13 01:21:41.037 sProbCandlComb EURUSD..,M5: 000
Ergebnis für Werte [0;2] mit Nummer in Zeile 4:
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2222
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1222
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0222.
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2122
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1122
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0122
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2022
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1022
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0022.
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2212
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1212
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0212
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2112
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1112
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0112
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2012
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1012
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0012
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2202
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1202
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0202
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2102
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1102
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0102
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2002
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1002
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0002
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2221
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1221
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0221
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2121
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1121
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0121
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2021
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1021
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0021
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2211
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1211
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0211
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2111
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1111
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0111
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2011
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1011
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0011
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2201
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1201
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0201
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2101
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1101
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0101
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2001
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1001
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0001
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2220
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1220
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0220
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2120
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1120
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0120
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2020.
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1020
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0020
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2210
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1210
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0210
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2110
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1110
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0110
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2010
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1010
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0010
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2200
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1200
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0200
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2100
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1100
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0100
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 2000
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 1000
2020.07.13 01:22:50.851 sProbCandlComb EURUSD..,M5: 0000
Die Logik des Algorithmus ist einfach und entspricht der Rechenregel: 1 zur Ziffer addieren, wenn die Ziffer mehr als die von uns als Minimum festgelegte Zahl enthält, zur nächsten Ziffer übergehen, wenn es bei der nächsten Ziffer keine "Nullstellung" gibt, zur ersten zurückgehen.
Stimmt, die Ziffern habe ich nicht auf der rechten, sondern auf der linken Seite, na ja, hoppla.
0000
0001
0010
0011
0100
0101
....
usw.
Es mag möglich sein, durch die Verwendung von Rekursion noch schöneren Code zu erhalten, aber es ist unwahrscheinlich, dass dies schneller geht.
Ihr Beispiel ist keine Kombination, sondern eine Permutation ohne Wiederholung.
und mein Beispiel ist eine Kombination ohne Wiederholungen