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

 
Roman :

@Almaz
Copy_xxx_xxx işlevlerini ilk kez çalıştırdığınızda, terminal bir süredir başlatılmadığında,
işlevler, geçmiş sayfalamanın senkronizasyonunu beklemeden geçmişi atlayarak mevcut sonucu hemen döndürür.
Diğer bir deyişle, ilkişlev çağrısı , geçmişin atlandığı bir sonuç döndürür.
Yalnızca sonraki aramalarda, geçmiş değiştirildiğinde doğru sonuç döndürülür.
Bu anı düzeltmek mümkün mü? Ve copy_xxx_xxx işlevleri, ilk çağrıldıklarında geçmişin değiştirilmesini bekledi.

copy_ticks veya copy_rates? hangi terminal yapısı?

 
Roman :

@Almaz
Copy_xxx_xxx işlevlerini ilk kez çalıştırdığınızda, terminal bir süredir başlatılmadığında,
işlevler, geçmiş sayfalamanın senkronizasyonunu beklemeden geçmişi atlayarak mevcut sonucu hemen döndürür.
Diğer bir deyişle, ilkişlev çağrısı , geçmişin atlandığı bir sonuç döndürür.
Yalnızca sonraki aramalarda, geçmiş değiştirildiğinde doğru sonuç döndürülür.
Bu anı düzeltmek mümkün mü? Ve copy_xxx_xxx işlevleri, ilk çağrıldıklarında geçmişin değiştirilmesini bekledi.

Veri Erişimini Düzenleme bölümünü okuyun, Python kitaplığının bununla hiçbir ilgisi yoktur. Bu standart davranıştır, bu tür durumları ele almanız ve terminal değiştirdikten sonra geçmişin yeniden çalıştırılmasını istemeniz gerekir.

Bu tek seferlik bir olaydır, bu nedenle kritik değildir. Her zaman bir komut dosyasından terminal ile çalışıyorsanız, geçmişinizi her zaman güncel tutabilirsiniz.

Документация по MQL5: Доступ к таймсериям и индикаторам / Организация доступа к данным
Документация по MQL5: Доступ к таймсериям и индикаторам / Организация доступа к данным
  • www.mql5.com
Прежде чем ценовые данные будут доступны в терминале MetaTrader 5, их необходимо получить и обработать. Для получения данных требуется подключение к торговому серверу MetaTrader 5. Данные поступают с сервера по запросу терминала в виде экономно упакованных блоков минутных баров. Механизм обращения к серверу за данными не зависит от того, каким...
 
Almaz :

copy_ticks veya copy_rates? hangi terminal yapısı?

Copy_rates kullandım ama aynı şeyin copy_ticks için de olacağını düşünüyorum ama kontrol etmedim.
2470 inşa

 
Rashid Umarov :

Veri Erişimini Düzenleme bölümünü okuyun, Python kitaplığının bununla hiçbir ilgisi yoktur. Bu standart davranıştır, bu tür durumlarla başa çıkmanız ve terminal onu değiştirdikten sonra geçmişin yeniden çalıştırılmasını istemeniz gerekir.

Bu tek seferlik bir olaydır, bu nedenle kritik değildir. Her zaman bir komut dosyasından terminal ile çalışıyorsanız, geçmişinizi her zaman güncel tutabilirsiniz.

Bu bölümü okudum, Mql5'e atıfta bulunuyor.
Yoksa aynı prensipten dolayı CheckLoadHistory'yi düzenlemeniz gerektiğini mi ima ediyorsunuz?
Neden bu özelliği standart olarak sunmuyorsunuz? Mql ve Py kitaplıkları için.

Genel olarak, Kopyala işlevinde yanlış verilerin alınmasına izin vermeniz gariptir, geçmişin değiştirilmesini beklemeden sonucu döndürürsünüz.
 
Roman :

Bu bölümü okudum, Mql5'e atıfta bulunuyor.
Yoksa aynı prensipten dolayı CheckLoadHistory'yi düzenlemeniz gerektiğini mi ima ediyorsunuz?
Neden bu özelliği standart olarak sunmuyorsunuz? Mql ve Py kitaplıkları için.

Genel olarak, Kopyala işlevinde yanlış verilerin alınmasına izin vermeniz gariptir, geçmişin değiştirilmesini beklemeden sonucu döndürürsünüz.

MQL5'te çalışanların bölümde soruları var   Veri erişiminin organizasyonu özel bir şey değildir. Bu bölümü çok geniş bir şekilde inceledik. Ve kullanıyoruz.

Python'un neden farklı olması gerektiğini düşünüyorsunuz?

Yine de ana çekirdek MQL5 ve bunu bilmeniz gerekiyor. Ve ancak o zaman Python'u uygulayın.

Документация по MQL5: Доступ к таймсериям и индикаторам / Организация доступа к данным
Документация по MQL5: Доступ к таймсериям и индикаторам / Организация доступа к данным
  • www.mql5.com
Прежде чем ценовые данные будут доступны в терминале MetaTrader 5, их необходимо получить и обработать. Для получения данных требуется подключение к торговому серверу MetaTrader 5. Данные поступают с сервера по запросу терминала в виде экономно упакованных блоков минутных баров. Механизм обращения к серверу за данными не зависит от того, каким...
 
Roman :

Bu bölümü okudum, Mql5'e atıfta bulunuyor.
Yoksa aynı prensipten dolayı CheckLoadHistory'yi düzenlemeniz gerektiğini mi ima ediyorsunuz?
Neden bu özelliği standart olarak sunmuyorsunuz? Mql ve Py kitaplıkları için.

Genel olarak, Kopyala işlevinde yanlış verilerin alınmasına izin vermeniz gariptir, geçmişin değiştirilmesini beklemeden sonucu döndürürsünüz.

Python kitaplığı, talebin manuel olarak, MQL5 aracılığıyla veya Python'dan bir komut dosyası ile yapılıp yapılmadığına bakılmaksızın , MetaTrader 5 terminalinden genel olarak veri talep etmenize olanak tanır.

Verilerle çalışmanın tüm mantığı ve organizasyonu, MQL5 programlarının ve Python komut dosyalarının geliştiricisine düşer.

 

Tünaydın

PowerShell üzerinden terminale bağlanma seçeneği var mı? Nasıl olduğunu bilen varsa bilgi verirse sevinirim

Python ile deneyimim yok, bu yüzden daha iyi bildiklerimi kullanmak istiyorum))

 

Güzel gün!

Kütüphaneleri bağladım, Mt5 ile python bağlantısı var, hesap hakkında bilgi alıyorum ama hiçbir şekilde alıntılar yüklenmiyor. Bana kimin bildiğini söyle.

Python sürüm 3.7.6


from datetime import datetime
import MetaTrader5 as mt5

# выведем информацию о версии MetaTrader 5
print(mt5. version ())

# установим подключение к терминалу MetaTrader 5
if not mt5.initialize():
    print("initialize() failed, error code =",mt5.last_error())
    quit()

# подключимся к торговому счету без указания пароля и сервера
account= 17245465
authorized=mt5.login(account)  # пароль будет взят из базы терминала, если указано помнить данные для подключения
if authorized:
    # выведем данные о торговом счете как есть
    print(mt5.account_info())
    # выведем данные о торговом счете в виде списка
    print("Show account_info()._asdict():")
    account_info_dict = mt5.account_info()._asdict()
     for prop in account_info_dict:
        print("  {}={}".format(prop, account_info_dict[prop]))
else :
    print("failed to connect at account #{}, error code: {}".format(account, mt5.last_error()))

# запросим статус и параметры подключения
print(mt5.terminal_info())

# получим информацию о версии MetaTrader 5
print(mt5. version ())

x= mt5.symbols_total()
print('количество всех финансовых инструментов в терминале MetaTrader 5 =', x)

# получим все символы
symbols=mt5.symbols_get()
print('symbols=', symbols)

# получим бары с разных инструментов разными способами
eurusd_rates = mt5.copy_rates_from("EURUSD", mt5.TIMEFRAME_M30, datetime ( 2020 , 1 , 28 , 13 ), 1000 )

# DATA
print('eurusd_rates', eurusd_rates )

# завершим подключение к MetaTrader 5
mt5.shutdown()


Sonuç:

(0, 0, '')
AccountInfo(login=17245465, trade_mode=2, leverage=500, limit_orders=500, margin_so_mode=0, trade_allowed=False, trade_expert=True, margin_mode=2, currency_digits=2, fifo_close=False, balance=0.0, credit=0.0, profit=0.0, equity=0.0, margin=0.0, margin_free=0.0, margin_level=0.0, margin_so_call=50.0, margin_so_so=20.0, margin_initial=0.0, margin_maintenance=0.0, assets=0.0, liabilities=0.0, commission_blocked=0.0, name='xxxxxxxxxxxxx', server='Alpari-MT5', currency='USD', ...)
Show account_info()._asdict():
  login=17045461
  trade_mode=2
  leverage=500
  limit_orders=500
  margin_so_mode=0
  trade_allowed=False
  trade_expert=True
  margin_mode=2
  currency_digits=2
  fifo_close=False
  balance=0.0
  credit=0.0
  profit=0.0
  equity=0.0
  margin=0.0
  margin_free=0.0
  margin_level=0.0
  margin_so_call=50.0
  margin_so_so=20.0
  margin_initial=0.0
  margin_maintenance=0.0
  assets=0.0
  liabilities=0.0
  commission_blocked=0.0
  name=ххххххх
  server=Alpari-MT5
  currency=USD
  company=Alpari International
TerminalInfo(community_account=True, community_connection=True, connected=True, dlls_allowed=False, trade_allowed=False, tradeapi_disabled=False, email_enabled=False, ftp_enabled=False, notifications_enabled=False, mqid=False, build=2489, maxbars=100000000, codepage=1251, ping_last=95766, community_balance=0.0, retransmission=5.305821665438467, company='Alpari International', name='Alpari MT5', language='Russian', path='C:\\Program Files\\Alpari MT5', ...)
(500, 2489, '12 Jun 2020')

количество всех финансовых инструментов в терминале MetaTrader 5= 43
symbols= (SymbolInfo(custom=False, chart_mode=0, select=True, ....
eurusd_rates None

Process finished with exit code 0
Документация по MQL5: Константы, перечисления и структуры / Константы графиков / Свойства графиков
Документация по MQL5: Константы, перечисления и структуры / Константы графиков / Свойства графиков
  • www.mql5.com
Признак отрисовки ценового графика. Если установлено значение false, то отключается отрисовка любых атрибутов ценового графика и устраняются все отступы по краям графика: шкалы времени и цены, строка быстрой навигации, метки событий Календаря, значки сделок, тултипы индикаторов и баров, подокна индикаторов, гистограммы объёмов и т.д. Значение...
 
rale70 :

Güzel gün!

Kütüphaneleri bağladım, python ile Mt5 arasında bir bağlantı var , hesap hakkında bilgi alıyorum ama hiçbir şekilde alıntılar yüklenmiyor. Bana kimin bildiğini söyle.

Python sürüm 3.7.6



Sonuç:

Lütfen kodu doğru şekilde yapıştırın (düğmeyi kullanın) kod )

 
Vladimir Karputov :

Lütfen kodu doğru şekilde yapıştırın (düğmeyi kullanın)

Gönderdiğiniz için teşekkürler, dikkate alacağım.