MetaTrader 5 Python Kullanıcı Grubu - Metatrader'da Python nasıl kullanılır - sayfa 63

 
MetaQuotes :

Bu gece bir sonraki beta sürümü mevcut olacak:

https://www.mql5.com/en/forum/306742/page16#comment_16148685

MetaTrader 5 Python User Group - the summary
MetaTrader 5 Python User Group - the summary
  • 2020.04.24
  • www.mql5.com
The Main Study MetaTrader module for integration with Python - documentation Python Releases for Windows - website MetaTrader5 : Python Package...
 
Новая версия платформы MetaTrader 5 build 2360: Расширение интеграции с SQLite
Новая версия платформы MetaTrader 5 build 2360: Расширение интеграции с SQLite
  • 2020.05.03
  • www.mql5.com
В пятницу 6 марта 2020 года будет выпущена обновленная версия платформы MetaTrader 5...
 
https://www.mql5.com/ru/docs/integration/python_metatrader5
Başlatma komut dosyasını çalıştırmayı deniyorum - her şey tamamlandı, örnekteki ticaret çiftleriyle ilgili verileri içeren bir dizi yazdırıyor, üzerine bir grafik çizdiği bir pencere açıyor
Ama örneğin ""EURAUD" yerine "DAX30" koymayı denedim - çalıştırdıktan sonra komut dosyası DAX30 seçilemedi
Lütfen bana sorunun ne olabileceğini söyle? Terminal versiyonu 2402

Ve bir oturum açma parolası ve bir sunucu ile aracımın demo hesabına mt5.initialize aracılığıyla bağlantı kuruyorum.
Документация по MQL5: Интеграция / MetaTrader для Python
Документация по MQL5: Интеграция / MetaTrader для Python
  • www.mql5.com
Python является современным высокоуровневым языком программирования для разработки сценариев и приложений. Содержит множество библиотек для машинного обучения, автоматизации процессов, анализа и визуализации данных. Пакет MetaTrader для Python предназначен для...
 
Lol Kek :
https://www.mql5.com/ru/docs/integration/python_metatrader5
Başlatma komut dosyasını çalıştırmayı deniyorum - her şey tamamlandı, örnekteki ticaret çiftleriyle ilgili verileri içeren bir dizi yazdırıyor, üzerinde bir grafik çizdiği bir pencere başlatıyor
Ama örneğin ""EURAUD" yerine "DAX30" koymayı denedim - çalıştırdıktan sonra komut dosyası DAX30 seçilemedi
Lütfen bana sorunun ne olabileceğini söyle? Terminal versiyonu 2402

Ve bir oturum açma parolası ve bir sunucu ile aracımın demo hesabına mt5.initialize aracılığıyla bağlantı kuruyorum.
DAX30 ile çalışmak için işlevi çağırdıktan sonra mt5.last_error() içinde ne döndürüldüğünü kontrol edin
 

# DAX30 sembolünün MarketWatch'ta görüntülenmesini etkinleştirmeyi deneyelim
seçili=mt5. symbol_select ( "DAX30" , Doğru )
seçili değilse :
    print ( "initialize() başarısız, hata kodu = " , mt5.last_error())
    mt5.shutdown()
    bırak ()


işte bir hata (-1, 'Terminal: Çağrı başarısız')
 
Lol Kek :

# DAX30 sembolünün MarketWatch'ta görüntülenmesini etkinleştirmeyi deneyelim
seçili = mt5.symbol_select( "DAX30" , Doğru )
seçili değilse :
    print ( "initialize() başarısız, hata kodu = " , mt5.last_error())
    mt5.shutdown()
    bırak ()


işte bir hata (-1, 'Terminal: Çağrı başarısız')

DAX30 sembolünün alım satım hesabınızda olduğundan emin misiniz?

Lütfen ticaret hesabınızda bu simgeyle piyasa saatinin bir ekran görüntüsünü gösterin.

 
Renat Fatkhullin :

DAX30 sembolünün alım satım hesabınızda olduğundan emin misiniz?

Lütfen ticaret hesabınızda bu simgeyle piyasa saatinin bir ekran görüntüsünü gösterin.

***
İşte bu kodu alıyorum - https://www.mql5.com/ru/docs/integration/python_metatrader5/mt5copyratesrange_py , başlatma demo hesabıma bağlanarak gerçekleştirilir. Örnekteki USDJPY çifti ile çalıştırırsanız, her şey yolundadır, bir işaret görüntüler. DAX30 ile değiştirirseniz - o zaman


oranlarda oran için:
TypeError: 'NoneType' nesnesi yinelenebilir değil

 
Lol Kek :

https://prnt.sc/sbapam
Burada bu kodu alıyorum, başlatmayı demo hesabımla bağlantı kurarak gerçekleştiriyorum. Örnekteki USDJPY çifti ile çalıştırırsanız, her şey yolundadır, bir işaret görüntüler. DAX30 ile değiştirirseniz - o zaman

oranlarda oran için:
TypeError: 'NoneType' nesnesi yinelenemez

lol kek :

# DAX30 sembolünün MarketWatch'ta görüntülenmesini etkinleştirmeyi deneyelim
seçili = mt5.symbol_select( "DAX30" , Doğru )
seçili değilse :
    print ( "initialize() başarısız, hata kodu = " , mt5.last_error())
    mt5.shutdown()
    bırak ()


işte bir hata (-1, 'Terminal: Çağrı başarısız')
Köşeli parantez içinde Dax30 var. Doğru bir şekilde size bir hata verilir.
 
Dmitriy Skub :
Köşeli parantez içinde Dax30 var. Doğru bir şekilde size bir hata verilir.

Vay hiç fark etmemiştim teşekkürler
Ve mantığı üçüncü taraf bir PL'ye, özellikle Python'a aktarma fırsatı için geliştiricilere teşekkürler.
Mantığı ayrıştırma ve uygulama sürecinde soru veya öneriler gelebilir, buraya geri bildirim bırakmaya çalışacağım

 

Herkese selam,


Umarım burada bir İngiliz'e aldırmazsın. Web'de başarılı bir şekilde arama yapmak için çok zaman harcadıktan sonra bazı rehberlik arıyorsunuz.

Maxiums makalelerinden biraz ilham aldıktan sonra MetaTrader5 Python kitaplığını kullanıyorum. Bellek işlemeyle ilgili bir sorun fark ettim.

Mt5 lib kullanarak bir Veri Çerçevesi yaptığımda, ortaya çıkan veri çerçevesi beklendiği gibi çalışıyor. Bunu, keneleri toplayan ve ardından manipüle edilmiş df'nin çıktısını almadan önce çeşitli analizler yapan bir fonksiyon içinde yaptım.

Ancak, DataFrame'i oluşturan işlevi yeniden çalıştırırsam, belleğin önceki örnekten birikmeye devam ettiğini fark ettim.

Aynı sorunu mt5.copy_ticks_range() ve mt5.copy_rates_range() kullanarak da alıyorum. Belleği temizlemek için çekirdeği sıfırlamam gerekiyor.

Veri çerçevesini oluşturan satır dışındaki tüm kodu kaldırdıktan sonra bile aynı sorunu yaşıyorum. Örneğin:

def vel (sembol, yeniden inceleme, ileriye dönük, başlangıç_tarihi, bitiş_tarihi, nicelik_boyutu):

ticks = pd.DataFrame(mt5.copy_ticks_range(symbol, datetime(start_date.year, start_date.month, start_date.day), datetime(end_date.year, end_date.month, end_date.day), mt5.COPY_TICKS_ALL), sütunlar = [ 'zaman', 'teklif', 'sor', 'son', 'hacim', 'time_msc', 'bayraklar', 'volume_real'])

Bunu birkaç kez çalıştırırsam, bellek kullanımı her seferinde 27MiB artar:

Satır # Mem kullanımı Artış Satır İçeriği =========================================== ===== 126,3 MiB 126,3 MiB varsayılan (sembol, yeniden inceleme, ileriye dönük, başlangıç_tarihi, bitiş_tarihi, nicelik_boyutu): 153.3 MiB 26,9 MiB keneler = pd.DataFrame(mt5.copy_ticks_range(symbol, datetime(start_date.year, start_date .month) , başlangıç_tarihi.gün), ...


Satır # Mem kullanımı Artış Satır İçeriği

================================================



          140.9 MiB 140.9 MiB tanımlı (sembol, yeniden inceleme, ileriye dönük, başlangıç_tarihi, bitiş_tarihi, nicelik_boyutu): 



          166.5 MiB 25,7 MiB keneler = pd.DataFrame(mt5.copy_ticks_range(symbol, datetime(start_date.year, start_date.month, start_date.day), ...