Die geheimnisvolle Zahl 63 :)
Ich habe das gleiche Datum und die gleichen Einstellungen gewählt, aber die Ergebnisse sind unterschiedlich ausgefallen - weiß jemand, warum?
Ergebnisse des ersten ModelltestsErgebnisse des zweiten Modelltests
Erstens, vielen Dank für die Zusammenstellung, es ist schön, in verschiedene Richtungen zu schauen. Es ist einfach zu folgen und gut zusammengesetzt.
Für mich erhalte ich ähnliche Erfolgsraten und eine etwas geringere Anzahl von Trades mit dem Demokonto, aber wenn ich das Meta Trader Demokonto benutze. Mit meinem Handelskonto wird nur einmal gehandelt. Ich nehme an, dass es an der Zeitzone des Brokers liegt, mein Broker ist in Australien (GMT+10). Die erste Transaktion vom Demokonto ist; Core 1 2023.01.02 07:02:00 deal #2 sell 1 EURUSD at 1.07016 done(based on order #2)
Die erste Transaktion von My Broker Australia (GMT+10) ist; Core 1 2023.01.03 00:00:00 failed market sell 1 EURUSD [Market closed] und nicht genau sicher, wie dies zu lösen. Möglicherweise ist das gesamte Modell zeitzonenabhängig. Wenn das der Fall wäre, sollten die Zeiten in ganzen Stunden angegeben werden... aber wie wird die Starttransaktion 2023.01.02 07:02:00 zu 2023.01.03 00:00:00?
Ich würde mich über jeden Vorschlag zur Ursache dieses Problems freuen.
Handelsaufschlag
Auch hier gelingt es mir, sehr ähnliche Ergebnisse mit den ursprünglichen onnx-Dateien auf meinem MetaQuates-Demokonto zu reproduzieren.
Dann schaffe ich es, die Python-MLs bis zum Ende zu trainieren; allerdings mit folgenden Warnungen/Fehlern, die ignoriert werden können:
D:\MT5 Demo1\MQL5\Experts\article_12433\Python>python ONNX.eurusd.D1.10.Training.py 2023-11-19 18:07:38.169418: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'cudart64_110.dll'; dlerror: cudart64_110.dll not found 2023-11-19 18:07:38.169664: I tensorflow/stream_executor/cuda/cudart_stub.cc:29] Ignore above cudart dlerror if you do not have a GPU set up on your machine. data path to save onnx model 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 5187/5187 [00:00<00:00, 6068.93it/s] 2023-11-19 18:07:40.434910: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'nvcuda.dll'; dlerror: nvcuda.dll not found 2023-11-19 18:07:40.435070: W tensorflow/stream_executor/cuda/cuda_driver.cc:263] failed call to cuInit: UNKNOWN ERROR (303) 2023-11-19 18:07:40.437138: I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:169] retrieving CUDA diagnostic information for host: WIN-SSPXX7BO0B0 2023-11-19 18:07:40.437323: I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:176] hostname: WIN-SSPXX7BO0B0 2023-11-19 18:07:40.437676: I tensorflow/core/platform/cpu_feature_guard.cc:193] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations: AVX AVX2 To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags. Epoch 1/50 111/111 - 1s - loss: 1.6160 - mae: 0.9378 - val_loss: 2.7602 - val_mae: 1.3423 - lr: 0.0010 - 1s/epoch - 12ms/step Epoch 2/50 111/111 - 0s - loss: 1.4932 - mae: 0.8952 - val_loss: 2.4339 - val_mae: 1.2412 - lr: 0.0010 - 287ms/epoch - 3ms/step ...
Beide ML-Skripte enden mit:
111/111 - 0 s - loss: 1.2812 - mae: 0.8145 - val_loss: 1.2598 - val_mae: 0.8142 - lr: 1.0000 e-06 - 366 ms/epoch - 3 ms/step Epoch 50/50 111/111 - 0 s - loss: 1.3030 - mae: 0.8203 - val_loss: 1.2604 - val_mae: 0.8143 - lr: 1.0000 e-06 - 365 ms/epoch - 3 ms/step 33/33 [==============================] - 0 s 1 ms/step - loss: 1.1542 - mae: 0.7584 test_loss=1.154 test_mae=0.758 2023-11-19 18:07:57.480814: I tensorflow/core/grappler/devices.cc:66] Number of eligible GPUs (core count >= 8, compute capability >= 0.0): 0 2023-11-19 18:07:57.481315: I tensorflow/core/grappler/clusters/single_machine.cc:358] Starting new session 2023-11-19 18:07:57.560110: I tensorflow/core/grappler/devices.cc:66] Number of eligible GPUs (core count >= 8, compute capability >= 0.0): 0 2023-11-19 18:07:57.560380: I tensorflow/core/grappler/clusters/single_machine.cc:358] Starting new session 2023-11-19 18:07:57.611678: I tensorflow/compiler/mlir/mlir_graph_optimization_pass.cc:354] MLIR V1 optimization pass is not enabled saved model to model.eurusd.D1.10.onnx
24/24 - 0 s - loss: 0.6618 - accuracy: 0.6736 - val_loss: 0.8993 - val_accuracy: 0.4759 - lr: 4.1746 e-05 - 37 ms/epoch - 2 ms/step Epoch 300/300 24/24 - 0 s - loss: 0.6531 - accuracy: 0.6770 - val_loss: 0.8997 - val_accuracy: 0.4789 - lr: 4.1746 e-05 - 39 ms/epoch - 2 ms/step 11/11 [==============================] - 0 s 682 us/step - loss: 0.8997 - accuracy: 0.4789 test_loss=0.900 test_accuracy=0.479 2023-11-19 18:07:19.838160: I tensorflow/core/grappler/devices.cc:66] Number of eligible GPUs (core count >= 8, compute capability >= 0.0): 0 2023-11-19 18:07:19.838516: I tensorflow/core/grappler/clusters/single_machine.cc:358] Starting new session 2023-11-19 18:07:19.872285: I tensorflow/core/grappler/devices.cc:66] Number of eligible GPUs (core count >= 8, compute capability >= 0.0): 0 2023-11-19 18:07:19.872584: I tensorflow/core/grappler/clusters/single_machine.cc:358] Starting new session saved model to model.eurusd.D1.63.onnx
Als nächstes kompiliere ich die ursprüngliche ONNX.Price.Prediction.2M.D1.mq5 neu, um die neuen MLs zu verwenden, die ich trainiert habe.
Die Backtest-Ergebnisse mit dem gleichen MetaQuates-Demo-Konto waren viel anders als das Original; das sieht nicht gut aus.
Ich würde wirklich gerne wissen, was schief gelaufen ist.
Vielen Dank.

- 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.
Neuer Artikel Ein Beispiel für die Zusammenstellung von ONNX-Modellen in MQL5 :
ONNX (Open Neural Network eXchange) ist ein offenes Format zur Darstellung neuronaler Netze. In diesem Artikel zeigen wir Ihnen, wie Sie zwei ONNX-Modelle gleichzeitig in einem Expert Advisor verwenden können.
Für einen stabilen Handel ist es in der Regel empfehlenswert, sowohl die gehandelten Instrumente als auch die Handelsstrategien zu diversifizieren. Das Gleiche gilt für Modelle des maschinellen Lernens: Es ist leichter, mehrere einfachere Modelle zu erstellen als ein komplexes. Es kann jedoch schwierig sein, diese Modelle zu einem ONNX-Modell zusammenzufügen.
Es ist jedoch möglich, mehrere trainierte ONNX-Modelle in einem MQL5-Programm zu kombinieren. In diesem Artikel betrachten wir eines aus so einem Ensemble, den sogenannten Abstimmungsklassifikator. Wir werden Ihnen zeigen, wie einfach es ist, ein solches Ensemble zu realisieren.
Die Ergebnisse des ersten Modelltests.
Nun wollen wir das zweite Modell testen. Hier sind die Ergebnisse des zweiten Modelltests.
Autor: MetaQuotes