Ticarette makine öğrenimi: teori, pratik, ticaret ve daha fazlası - sayfa 2938

 
Mikhail Mishanin #:

2023.02.28 05:27:35.269 Storage 'ONNX.Price.Prediction' projesine başarıyla katıldı

2023.02.28 05:27:56.191 Depolama MQL5 Depolama etkinleştirildi

2023.02.28 05:27:56.191 Storage checkout MQL5 için başlatıldı

2023.02.28 05:27:56.635 Storage İstenen SVN dosya sistemi bulunamadı (720003)

2023.02.28 05:28:32.432 Depolama Sahibi MQL5 Depolama 'dinpae@gmail.com', MQL5 hesabını değiştirin

Bu ne anlama geliyor? Bağlanılamıyor.

On - Connect MQL5 Storage. gives 2023.02.28 05:36:25.147 Storage Owner MQL5 Storage is 'dinpae@gmail.com', MQL5 hesabını değiştirin.


MQL5 Storage'a hangi hesapla giriş yaptınız?

E-postanızı veya tam olarak büyük/küçük harfe duyarlı oturum açma bilgilerinizi belirttiniz mi?

E-posta kabul edilmiyor.

 
Aleksey Nikolayev #:

Proje adına sağ tıklayın. Bu şekilde olmalıdır:


Evet, böyle bir şey var, ancak bir hata yazıyor
2023.02.28 13:05:45.151 Storage checkout started for MQL5\Shared Projects\ONNX.Price.Prediction
2023.02.28 13:05:45.667 Storage Not authorized to open root of edit operation  (220000)
Bir yerlerde bir tür yetkilendirme var
 
Evgeny Dyuka #:
Evet, böyle bir şey var ama hata veriyor
Bir yerlerde bir çeşit yetkilendirme var.

Şey, bilmiyorum. Projeden ayrılmayı ve silmeyi deneyin, sonra tekrar katılın, sonra depodan bir güncelleme alın.

Günlükte bir projeden ayrıldığınızda:

2023.02.28 16:31:47.481 Storage successfully left the project 'ONNX.Price.Prediction'

Silinirken hiçbir şey yazılmaz. Bir projeye katılırken:

2023.02.28 16:31:59.970 Storage successfully joined to the project 'ONNX.Price.Prediction'

Bir güncelleme alırken:

2023.02.28 16:41:43.985 Storage checkout started for MQL5\Shared Projects\ONNX.Price.Prediction
2023.02.28 16:41:44.750 Storage added MQL5\Shared Projects\ONNX.Price.Prediction\Python
2023.02.28 16:41:44.750 Storage added MQL5\Shared Projects\ONNX.Price.Prediction\Python\PricePredictionTraining.py
2023.02.28 16:41:44.750 Storage added MQL5\Shared Projects\ONNX.Price.Prediction\Python\PricePrediction.py
2023.02.28 16:41:44.750 Storage added MQL5\Shared Projects\ONNX.Price.Prediction\Python\model.onnx
2023.02.28 16:41:44.750 Storage added MQL5\Shared Projects\ONNX.Price.Prediction\ONNX.Price.Prediction.mq5
2023.02.28 16:41:44.750 Storage added MQL5\Shared Projects\ONNX.Price.Prediction\ONNX.Price.Prediction.mqproj
2023.02.28 16:41:44.784 Storage checkout completed successfully in 797 ms

Yetkilendirme yalnızca depoya bağlanırken yapıldı - bu olmadan projeye katılmak imkansızdır.

Size daha fazla yardımcı olamam. Eski bir sürümünüz yoksa - bunu en son sürümde (beta ve sürüm) yaptım.

 
Aleksey Nikolayev #:

Şey, bilmiyorum. Projeden ayrılmayı ve silmeyi deneyin, ardından yeniden katılın, ardından depodan bir güncelleme alın.

Günlükte bir proje bıraktığınızda:

Silinirken hiçbir şey yazılmaz. Bir projeye katılırken:

Bir güncelleme alırken:

Yetkilendirme yalnızca depoya bağlanırken yapıldı - bu olmadan projeye katılmak temelde imkansızdır.

Size başka bir konuda yardımcı olamam. Eski bir sürüme sahip değilseniz - en son sürümde (beta ve sürüm) yaptım.

Anladım, teşekkürler.
 
Evgeny Dyuka #:
Anladım, teşekkürler.

Her ihtimale karşı, projeyi arşive gönderiyorum.

Dosyalar:
 
Renat Fatkhullin #:

MQL5 Storage'a hangi hesapla giriş yaptınız?

E-postanızı veya tam olarak büyük/küçük harfe duyarlı giriş bilgilerinizi belirttiniz mi?

E-posta kabul edilmemektedir.

girişte, sadece giriş bilgilerim başlangıçta çarpık, noktalarla dr.mr.mom, uzun zaman önce var, girişi değiştirebilir misiniz?

 

ONNX modellerinin çalışmasını test edebileceğiniz beta 3589 yayınlandı.

Adımlar:

  1. Yardım -> Masaüstü Güncellemelerini Kontrol Et -> En Son Beta Sürümü aracılığıyla 3589'a güncelleyin

  2. Doğru MQL5 oturum açma bilgilerini (e-posta değil) büyük/küçük harfe duyarlı biçimde belirterek MQL5 Storage'ı etkinleştirin:






  3. Bozuk bir yapılandırmanız varsa ve MQL5 Storage çalışmıyorsa, Dosya -> Veri Klasörünü Aç aracılığıyla Explorer'ı açın, MQL5 dizinine gidin ve aşağıdaki dosyaları silin:


    . Ardından 2. adıma gidin.

  4. ONNX.Price.Prediction projesine bağlam menüsünden Join komutunu kullanarak katılın.



  5. Navigator'ı açın, Paylaşılan Projeler bölümünü açın ve ONNX.Price.Prediction projesinde bağlam menüsünden Depodan Güncelle'yi çağırın:



    Proje MQL5 Deposundan (Subversion) indirilecektir.

  6. Projeyi açın ve ONNX.Price.Prediction.mqproj üzerine tıklayın - bu proje dosyasıdır



  7. Projeyi kopyalayın ve EURUSD, H1 üzerinde çalıştırın.

  8. Sonucu alın:
    2023.02.28 21:54:43.316 Scripts script ONNX.Price.Prediction (EURUSD,H1) loaded successfully
    2023.02.28 21:54:43.348 ONNX    initialized [API version 1.14.0]
    
    в журнале Experts: важны две последние строки, а остальное - специально включенные отладочные логи по флагу ONNX_DEBUG_LOGS
    
    2023.02.28 22:11:53.441 ONNX.Price.Prediction (EURUSD,H1)       ONNX: Creating and using per session threadpools since use_per_session_threads_ is true
    2023.02.28 22:11:53.441 ONNX.Price.Prediction (EURUSD,H1)       ONNX: Dynamic block base set to 0
    2023.02.28 22:11:53.442 ONNX.Price.Prediction (EURUSD,H1)       ONNX: Initializing session.
    2023.02.28 22:11:53.442 ONNX.Price.Prediction (EURUSD,H1)       ONNX: Adding default CPU execution provider.
    2023.02.28 22:11:53.442 ONNX.Price.Prediction (EURUSD,H1)       ONNX: Total shared scalar initializer count: 0
    2023.02.28 22:11:53.443 ONNX.Price.Prediction (EURUSD,H1)       ONNX: Total fused reshape node count: 0
    2023.02.28 22:11:53.443 ONNX.Price.Prediction (EURUSD,H1)       ONNX: Total shared scalar initializer count: 0
    2023.02.28 22:11:53.443 ONNX.Price.Prediction (EURUSD,H1)       ONNX: Total fused reshape node count: 0
    2023.02.28 22:11:53.444 ONNX.Price.Prediction (EURUSD,H1)       ONNX: Use DeviceBasedPartition as default
    2023.02.28 22:11:53.444 ONNX.Price.Prediction (EURUSD,H1)       ONNX: Saving initialized tensors.
    2023.02.28 22:11:53.444 ONNX.Price.Prediction (EURUSD,H1)       ONNX: Done saving initialized tensors
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: Session successfully initialized.
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: Number of streams: 1
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: Begin execution
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: stream 0 launch kernel with idx 0
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: ort value 1 released
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: stream 0 launch kernel with idx 1
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: ort value 2 released
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: stream 0 launch kernel with idx 3
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: ort value 6 released
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: stream 0 launch kernel with idx 4
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: ort value 8 released
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: stream 0 launch kernel with idx 5
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: ort value 9 released
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: stream 0 launch kernel with idx 6
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: stream 0 launch kernel with idx 7
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: stream 0 launch kernel with idx 2
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: ort value 3 released
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: ort value 11 released
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: stream 0 launch kernel with idx 8
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: stream 0 launch kernel with idx 9
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: ort value 16 released
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: stream 0 launch kernel with idx 10
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: stream 0 launch kernel with idx 11
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: ort value 22 released
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: stream 0 launch kernel with idx 12
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: ort value 25 released
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: stream 0 launch kernel with idx 13
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: ort value 27 released
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: stream 0 launch kernel with idx 27
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: stream 0 launch kernel with idx 17
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: stream 0 launch kernel with idx 18
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: ort value 28 released
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: stream 0 launch kernel with idx 28
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: ort value 30 released
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       ONNX: stream 0 launch kernel with idx 26
    
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       [-1.5921557]
    2023.02.28 22:11:53.445 ONNX.Price.Prediction (EURUSD,H1)       predicted 1.0591759612759748
    
  9. Çalışmazsa, ya ONNX Runtime'ın eski bir sürümü ya da eksik olduğu anlamına gelir

    Bu durumda, Microsoft tarafından imzalanmış ONNX Runtime 1.14 arşivini indirin, terminalin kök dizinine terminal64.exe'nin yanına genişletin ve terminali yeniden başlatın:

Projede, örnek olması açısından eğitilmiş en basit model.onnx, gösterimi görebilmeniz için hemen eklenmiştir.



Modeli kendiniz eğitmek için projede bulunan python komut dosyalarını kullanmanız gerekir:

  1. Python 3'ü (örneğin Python 3.10) yükleyin ve paketleri teslim edin/güncelleyin:
    python.exe -m pip install --upgrade pip
    pip install --upgrade tensorflow
    pip install --upgrade pandas
    pip install --upgrade scikit-learn
    pip install --upgrade matplotlib
    pip install --upgrade tqdm
    pip install --upgrade metatrader5
    pip install --upgrade onnx==1.12
    pip install --upgrade tf2onnx
    Onnx paketi, tensorflow gereksinimleriyle çakışmaması için açıkça 1.12 sürümünü belirtir.

  2. MetaEditor'u çalıştırın ve Python'un Araçlar -> Seçenekler -> Derleyiciler'de tanındığından emin olun:



    Gerekirse, editör kendi başına algılayamazsa yolu kendiniz belirtin.

  3. İşlem terminali EURUSD içeren bir sunucuya bağlanmalıdır (örneğin, MetaQuotes-Demo)

    Terminal ayarlarında Python ile entegrasyonun etkinleştirildiğinden emin olun. Eğer kapalıysa, açın ve terminali yeniden başlatın:




  4. Gezginde ONNX.Price.Prediction projesine gidin ve PricePredictionTraning.py dosyasını açın


  5. Derleme için komut dosyasını çalıştırın, bu bir Python komut dosyası için başlat anlamına gelir.

    Komut dosyası MetaTrader5 paketi yardımıyla terminale bağlanacak (kapalıysa, otomatik olarak başlayacaktır) ve EURUSD, H1 üzerinde eğitime başlayacaktır:


    Bittiğinde, Journal editörü şunları içerecektir:
    .
    2023.02.28 22:24:16.876 Python  107/107 [==============================] - 0 s 1 ms/step - loss: 1.9167 - mae: 0.8553
    2023.02.28 22:24:16.876 Python  test_loss=1.917
    2023.02.28 22:24:16.876 Python  test_mae=0.855
    2023.02.28 22:24:17.179 Python  saved model to C:\Users\sys\AppData\Roaming\MetaQuotes\Terminal\8 D1E0A7047FFD62A8C00B09AEC1F3004\MQL5\Shared Projects\ONNX.Price.Prediction\Python\model.onnx
    2023.02.28 22:24:17.291 Storage modify MQL5\Shared Projects\ONNX.Price.Prediction\Python\model.onnx to base
    
    Yeni model.onnx projeye kaydedilecek / güncellenecektir. Zaten kullanılabilir.

  6. Modelin çalıştığından emin olmak için PricePrediction.py betiğini çalıştırın:
    .
    2023.02.28 22:27:46.078 Python  data path to load onnx model C:\Users\sys\AppData\Roaming\MetaQuotes\Terminal\8 D1E0A7047FFD62A8C00B09AEC1F3004\MQL5\Shared Projects\ONNX.Price.Prediction\Python\
    2023.02.28 22:27:46.078 Python  [[[1.061412 1.062328 1.060358 1.061169]]]
    2023.02.28 22:27:46.078 Python  [[[0.00105361 0.00119785 0.00074662 0.00125179]]]
    2023.02.28 22:27:46.078 Python  [[[ 0.18792516  0.17698306  0.01607251 -0.45455042]
    2023.02.28 22:27:46.078 Python    [-0.77068297 -0.50757406  0.2839477   0.36827372]
    2023.02.28 22:27:46.078 Python    [ 0.21639867 -0.3823502   0.48485409 -0.19891574]
    2023.02.28 22:27:46.078 Python    [-0.46696554 -0.31556414  0.33752274  0.48011389]
    2023.02.28 22:27:46.078 Python    [ 0.3302927   0.7196198   1.36884221  1.56656129]
    2023.02.28 22:27:46.078 Python    [ 1.63058293  1.46261473  1.39562973  1.74231014]
    2023.02.28 22:27:46.078 Python    [ 1.82040632  1.84663458 -0.26519644 -0.52644768]
    2023.02.28 22:27:46.078 Python    [-0.84661232 -0.50757406 -0.45270907 -0.86995678]
    2023.02.28 22:27:46.078 Python    [-1.27371495 -1.11699687 -1.10900328 -0.48650476]
    2023.02.28 22:27:46.078 Python    [-0.82762998 -1.37579285 -2.0599602  -1.62088366]]]
    2023.02.28 22:27:46.094 Python  [[-1.6349795]]
    2023.02.28 22:27:46.094 Python  predict:  [1.05912]
    
  7. Test örneği çalıştı!


Bu, modellerin hem eğitimini hem de çalıştırılmasını göstermek için özel olarak oluşturulmuş bir örnektir.

Kendi TensorFlow modellerinizi onnx ve tf2onnx python paketlerini kullanarak ONNX formatına dönüştürebilirsiniz:

import tf2onnx
...
onnx_model = tf2onnx.convert.from_keras(model, output_path=output_path)

not: eski sürümde fonksiyon prototipleri değiştiği için projenin en son sürümünü kullanın.
 

İşe yaradı.

2023.03.01 06:54:34.987 ONNX.Price.Prediction (EURUSD,H1)       [-0.20001383]
2023.03.01 06:54:34.988 ONNX.Price.Prediction (EURUSD,H1)       predicted 1.0581684510582798
 
Renat Fatkhullin #:
  1. Python 3'ü (örneğin Python 3.10) yerleştirin ve paketleri teslim edin / güncelleyin:
    Tensorflow gereksinimleriyle çakışmamak için onnx paketini 1.12 sürümünden açıkça bahsederek paketleyin.

Bu paket yüklenemedi. Önce CMake'in yüklenmesini gerektirdi. Şimdi Visual Studio'nun yüklenmesini mi gerektiriyor?

CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage
CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage
 
Aleksey Nikolayev #:

Bu paketi yükleyemedim. Önce CMake yüklememizi istediler. Şimdi de Visual Studio'nun yüklenmesini mi istiyorlar?

Karşılıklı uyumsuzluklar cehennemiyle savaşma ve Python'daki görevler için ayrı ortamlar oluşturma yolunun hala başındasınız.

Bazı paketler hedef derleme için derleyici gerektirir.