Fan sayfamıza katılın
- Görüntülemeler:
- 195
- Derecelendirme:
- Yayınlandı:
- Güncellendi:
-
Bu koda dayalı bir robota veya göstergeye mi ihtiyacınız var? Freelance üzerinden sipariş edin Freelance'e git
Bu makalede,MetaTrader 5'ten Delphi 7 ile yazılmış bir sunucu uygulamasına fiyat verilerinin aktarılmasına dair bir örnek sunulmaktadır.
İletişim için TCP protokolü kullanılır; bu sayede veriler sadece yerel olarak değil, aynı zamanda uzaktan da aktarılabilir; örneğin, yerel ağ üzerinden bağlanmış bir bilgisayara.
Soketlerle çalışmak için
Winsock2 (wsock32.dll) kütüphanesi kullanılmaktadır. Ancak, MQL5'te işaretçilerle çalışma ve DLL'deki çağrılan işlevlere parametre olarak karmaşık veri türlerini aktarma mekanizması bulunmadığından, bu kütüphanenin işlevleriyle doğrudan çalışmak mümkün değildir.
Ekspert danışman ile soket kütüphanesini birbirine bağlayan ara halka olarak, C++ ile yazılmış socket_mql5.dll kütüphanesi kullanılır.
Şekil 1’de MetaTrader 5 ile sunucu uygulamasının etkileşim şeması gösterilmektedir.

Şekil 1. MetaTrader 5 ile sunucu uygulaması arasındaki etkileşim şeması
socket_mql5.dll kütüphanesinde, tek yönlü veri aktarımı için asgari işlev seti gerçekleştirilmiştir: SocketOpen, SocketWriteData, SocketWriteString, SocketClose. Fiyat verileri iki formatta aktarılabilir: veri olarak ve dize olarak. Biçim seçimi, danışmanın "aktarılan veri türü" giriş değişkeninde gerçekleştirilir.
Sunucu uygulamasına bağlanan ve her tik hakkındaki verileri ileten bir istemciyi hayata geçiren danışmanın çalışma sonucu Şekil 2'de gösterilmiştir.

Şekil 2. MetaTrader 5'ten sunucu uygulamasına veri aktarımı
Arşivde şunlar bulunmaktadır:
- Ekspert;
- socket_mql5.dll kütüphanesi (kaynak kodu VisualStudio 2008 ile yazılmıştır);
- TCP sunucusu ve TCP istemcisi (kaynak kodu Delphi 7 ile yazılmıştır).
MetaQuotes Ltd tarafından Rusçadan çevrilmiştir.
Orijinal kod: https://www.mql5.com/ru/code/169
Time To Close v1.01 - MT5
Mum Kapatma Zamanı. Dinamik metin renkleri. Geri test için optimize edilmiştir.
DailyHighLow Indicator for MQL5
DailyHighLow göstergesi, belirli bir zaman dilimine göre bir grafikte yüksek ve düşük fiyat seviyelerini görüntülemek için MetaTrader 5 (MQL5) için tasarlanmış çok yönlü bir araçtır. Bu gösterge, özelleştirilebilir zaman dilimleri ve fiyat hesaplama yöntemleri aracılığıyla esneklik sunarak karar vermek için temel fiyat seviyelerine güvenen tüccarlar için özellikle yararlıdır.
AlfOs
Variable Index Dynamic Average üzerinde OsMA’ya benzer bir osilatör.
Anahtar Kelimeler MQL5
MQL5 dilinin anahtar kelimeleri