Fan sayfamıza katılın
- Görüntülemeler:
- 244
- 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
Açıklama:
Bu, MetaTrader 5'te tam kapsamlı bir çoklu para birimi modunun nasıl organize edilebileceğine dair bir başka versiyondur. Standart OnTick(string symbol) tik işleyicisi tarzında tasarlanmıştır.
Avantajları:
- Demo ve gerçek hesaplarda gerçek çoklu para birimi desteği.
- Kolay ayarlar.
- OnTick(string symbol) içinde hangi olayların alınacağını ayarlayabilirsiniz: NewTick ve/veya NewBar.
- "Piyasa Görünümü" penceresindeki enstrümanlar veya kendi sembol listeniz için olayların alınmasını ayarlayabilirsiniz.
- "Piyasa Görünümü" penceresindeki sembollerle çalışırken, OnTick(string symbol) içinde hangi semboller için olaylar alınacağını "anında" yönetebilirsiniz.
- Bunun nasıl çalıştığını derinlemesine anlamanıza gerek yoktur. Tüm kod, dahil edilebilir bir dosyaya yerleştirilmiştir; kendi kodunuzu yazarken size engel olmaz.
- Test ortamında çalışır.
Ekspert şablonu şu şekildedir:
//+------------------------------------------------------------------+ //| OnTick(string symbol).mq5 | //| Telif Hakkı 2010, Lizar | //| https://www.mql5.com/tr/users/Lizar | //+------------------------------------------------------------------+ #define VERSION "1.00 Build 1 (01 Fab 2011)" #property copyright "Copyright 2010, Lizar" #property link "https://www.mql5.com/tr/users/Lizar" #property version VERSION #property description "Kullanım sırasında uzman şablonu" #property description "OnTick(string symbol) çoklu para birimi işlemcisi" //+------------------------------------------------------------------+ //| ÇOKLU PARA BİRİMİ MODU AYARLARI | //| OnTick(string symbol) olay işleyicisi için | //| | //| 1.1 Olayların alınması gereken karakterlerin listesi: | #define SYMBOLS_TRADING "EURUSD","GBPUSD","USDJPY","USDCHF" //| 1.2 "Piyasa Genel Bakışı" penceresindeki tüm semboller için olayları almak: | //#define SYMBOLS_TRADING "MARKET_WATCH" //| Not: Ya 1.1 numaralı maddeyi ya da 1.2 numaralı maddeyi seçmeniz gerekir. | //| | //| 2. OnTick(string symbol) için olay türü: | #define CHART_EVENT_SYMBOL CHARTEVENT_TICK //| Not: Olay türü, sıralamaya uygun olmalıdır | //| ENUM_CHART_EVENT_SYMBOL. | //| | //| 3. Tüm işlevleri içeren dahil edilen dosya: | #include <OnTick(string symbol).mqh> //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //| Uzman başlatma işlevi | //| Bu işlev, uzman kodunda mutlaka bulunmalıdır, | //| boş olsa bile | //+------------------------------------------------------------------+ int OnInit() { //--- Buraya kodunuzu yazın... return(0); } //+------------------------------------------------------------------+ //| Uzman çoklu tik işlevi | //| Bu işlev, standart OnTick() işlevinin yerine geçer | //+------------------------------------------------------------------+ void OnTick(string symbol) { //--- Buraya kodunuzu yazın... Print("Sembole göre yeni olay: ",symbol); } //+------------------------------------------------------------------+ //| ChartEvent işlevi | //| Bu işlev, uzman kodunda mutlaka bulunmalıdır, | //| boş olsa bile | //+------------------------------------------------------------------+ void OnChartEvent(const int id, // olay kimliği const long& lparam, // long türünde olay parametresi const double& dparam, // double türünde bir olay parametresi const string& sparam) // string türünde olay parametresi { //--- Buraya kodunuzu yazın... } //+------------------------------------------------------------------+ //| Uzman devre dışı bırakma işlevi | //+------------------------------------------------------------------+ void OnDeinit(const int reason) { //--- Buraya kodunuzu yazın... } //+------------------------------ son -------------------------------+
Bazı özellikler:
- Ayarlar.
Tüm ayarlar, #define ön işleyici yönergeleri kullanılarak yapılır. OnTick(string symbol) işlevinin doğru çalışması için sadece iki parametre ayarlanmalıdır: SYMBOLS_TRADING ve CHART_EVENT_SYMBOL. SYMBOLS_TRADING parametresi , olayların alınacağı sembolleri belirler. CHART_EVENT_SYMBOL parametresi isetüm semboller için olay türlerini belirler.
SYMBOLS_TRADING , sembol listesi şeklinde ayarlanabilir, örneğin:
#define SYMBOLS_TRADING "EURUSD","GBPUSD","USDJPY","USDCHF"Liste, virgülle ayrılmış dize sabitleri şeklinde düzenlenmelidir. Liste, satır sonu ile biter ve bir sonraki satıra taşınamaz.
Alternatif olarak, SYMBOLS_TRADING şu şekilde de tanımlanabilir:
#define SYMBOLS_TRADING "MARKET_WATCH"Bu yöntem, liste yerine "Piyasa Görünümü" penceresindeki sembolleri kullanacağınız anlamına gelir. Bu yöntemin avantajı, uzman danışman çalışırken OnTick(string symbol) işlevine olayların gönderileceği sembolleri "anında" değiştirebilmenizdir . Bunun için "Piyasa Genel Bakış" penceresinde işlem araçlarını eklemek veya silmek yeterlidir.
CHART_EVENT_SYMBOL olay türü, ENUM_CHART_EVENT_SYMBOL listesindeki bir bayrak veya bayrak kombinasyonu ile belirlenir. Bu liste hakkında daha fazla bilgiyi burada bulabilirsiniz. Olay türünü ayarlama örnekleri:
//--- Örnek 1. Olaylar her tikte gelir: #define CHART_EVENT_SYMBOL CHARTEVENT_TICK //--- Örnek 2. Sembollerle ilgili olaylar her dakika ve her saat gelir: #define CHART_EVENT_SYMBOL CHARTEVENT_NEWBAR_H1|CHARTEVENT_NEWBAR_M1
2. Dahil edilen dosya.
OnTick(string symbol) fonksiyonu için tüm işlevselliği içeren OnTick (string symbol) .mqh dosyasına ilişkin #include yönergesi , ayarların ardından ve diğer standart olay işleyicilerinin önüne yerleştirilmelidir. Dosya, OnTick(string symbol) için tüm hizmet kodunu gizleyecek şekilde düzenlenmiştir . Bu nedenle, yukarıdaki şablonda bazı standart fonksiyonların varlığı zorunlu olarak belirtilmiştir.
3. Test Aracı.
Bilindiği üzere, yayınlandığı tarihte test aracı OnChartEvent olay işleyicisini desteklememektedir. Stratejileri test etme imkânı sağlamak amacıyla, koda terminalin küresel değişkenleri aracılığıyla olay aktarımı eklenmiştir. Bu, yalnızca strateji test cihazı için yapılmıştır; gerçek ve demo hesaplarda olaylar OnChartEvent aracılığıyla aktarılır. Elbette, bu tür eklemeler kodu o kadar da güzel hale getirmedi, ancak artık test cihazını kullanmak mümkün.
Bir ayrıntı var. Test cihazında OnTick(string symbol) işlevi, test cihazı ayarlarında belirlenen sembolün tikleri üzerinde çalışır. Genel olarak, neredeyse OnTick() gibi çalışır , ancak her tikte seçilen işlem araçlarına ait olaylar gelir. Test edicide çalışabilmesi için SYMBOLS_TRADINGparametresindeki semboller bir liste halinde belirtilmelidir.
4. Casuslar.
Casus göstergeler kullanılmaktadır. Bu nedenle, \MQL5\Indicators\ dizininde Spy Control panel MCM.ex5 casusunun bulunması önemlidir. Ekteki dosyada Spy Control panel MCM.mq5'in yeni derlemesi bulunmaktadır. Bu derlemede, test ortamı için global değişkenler aracılığıyla olay iletimi özelliği eklenmiştir.
5. Ekteki arşiv, \MQL5 dizinine açılmalıdır. Dosyalar şu şekilde yerleştirilecektir:
- /mql5/experts/OnTick(string symbol).mq5 - uzman örneği, şablonun kaynak kodu;
- /mql5/experts/OnTick(string symbol).ex5 - uzman örneği, çalıştırılabilir dosya;
- /mql5/indicators/Spy Control panel MCM.mq5 - gösterge - ajan, kaynak kodu;
- /mql5/indicators/Spy Control panel MCM.ex5 - gösterge - ajan, yürütülebilir dosya;
- /mql5/include/OnTick(string symbol).mqh - OnTick(string symbol) işlevselliğinin tamamını içeren dahil edilebilir dosya.
MetaQuotes Ltd tarafından Rusçadan çevrilmiştir.
Orijinal kod: https://www.mql5.com/ru/code/280
Parametrik Olmayan Zig Zag, Clyde Lee Tarzı Desenler
Clyde Lee’nin desenlerinden esinlenerek oluşturulmuş parametrik olmayan zikzak.
Round Levels MT5
Yuvarlak Seviyeler MetaTrader göstergesi - yapılandırmanıza bağlı olarak yakınlarındaki yuvarlak seviyeleri ve bölgeleri görüntüleyebilen bir MT4 / MT5 göstergesi. Doğal psikolojik destek ve direnç bölgelerini takas etmek faydalı olabilir. Fiyat destek veya direnç bölgesinde olduğunda da uyarılar verebilir.
eKeyboardTrader
Temel işlemlerin klavyeyle gerçekleştirilmesini sağlayan bir uzman.
Recent High/Low Alert MT5
Son Yüksek / Düşük Uyarısı MetaTrader göstergesi - son N mumlarında iki maksimum ve minimum seviye bandı görüntüler. Varsayılan olarak, maksimum bant mavi bir çizgi ile görüntülenir; minimum bant sarı bir çizgi ile görüntülenir. Ek olarak, bir açılır pencere uyarısı çağırabilir, bir e-posta uyarısı gönderebilir veya mevcut fiyat (Teklif) son Yüksek veya Düşük seviyeyi kırdığında bir bildirim uyarısı verebilir. Tüm uyarılar kapatılabilir. E-posta uyarısı özelliğini kullanıyorsanız, MetaTrader platformunuzun seçenekler penceresinde e-posta ayarlarını yapmayı unutmayın. Anlık bildirimlerle aynı. Gösterge hem MT4 hem de MT5 için kullanılabilir.