- Makro ikamesi (#define)
- Program Özellikleri (#property)
- Dosya Ekleme (#include)
- Fonksiyonların İçe Aktarımı (#import)
- Koşullu Derleme (#ifdef, #ifndef, #else, #endif)
Program Özellikleri (#property)
Her MQL5 programı #property olarak isimlendirilen özel ek parametreler belirlemeye olanak sağlar. Bu parametreler, onları açıkça çalıştırma gereksinimi duymayan programlar için terminale yardım ederler. Bu, her şeyden önce göstergelerin dışsal ayarları ile ilgilidir. Dahil edilen dosyalarda tarif edilmiş olan özellikler gözardı edilir. Özellikler ana MQL5 dosyasında belirtilmiş olmalıdır.
#property tanımlayıcı değer |
Derleyici bildirilen değerleri çalıştırılan modül düzenlenirken yazacaktır.
Sabit |
Tip |
Açıklama |
---|---|---|
ikon |
EX5 programının ikonu olarak kullanılacak görüntü dosyasının adresi. Dosya adresi belirleme kuralları kaynaklarda olduğu gibidir. Özellik, MQL5 kaynak kodunun ana modülünde belirtilmelidir. İkon dosyası ICOformatında olmalıdır. |
|
link |
Firmanın internet sayfasının linki |
|
copyright |
Firma adı |
|
versiyon |
Program versiyonu (en fazla 31 karakter) |
|
açıklama |
Bir MQL5 programının kısa açıklaması. Birkaç açıklama yazılabilir. Her biri, metnin bir satırını oluşturur. Açıklamanın toplam uzunluğu -satır atlama operatörü de dahil olmak üzere- 511 karakteri geçemez. |
|
stacksize |
MQL5 program yığınının boyutu. Tekrar eden fonksiyon çağrıları kullanırken uygun boyutta bir yığın gerekir. Çizelge üzerinde bir Uzman veya bir betik dosyası çalıştırılırken, en az 8 MB 'lık yığın alanı tahsis edilir. Göstergeler için kullanılan yığının boyutu 1 MB ile sabittir. Strateji sınayıcı içinde çalıştırılan programlar için her zaman 16 MB yığın alanı tahsis edilir. |
|
kütüphane |
|
Kütüphane anlamına gelir. Start (başlat) fonksiyonu bir giriş noktası (olay işleyicisi) yoktur. dışa aktarım şekillendiricisi ile fonksiyonların diğer MQL5 programlarından içe aktarımı yapılabilir |
indicator_applied_price |
"Uygula" alanı (gösterge özellikleri penceresi) için varsayılan değeri belirtir. ENUM_APPLIED_PRICE değerlerinden birini kullanabilirsiniz. Eğer özellik belirtilmemişse varsayılan değer PRICE_CLOSE olur |
|
indicator_chart_window |
|
Göstergeyi çizelge penceresinde göster |
indicator_separate_window |
|
Göstergeyi ayrı bir pencerede göster |
indicator_height |
Gösterge alt penceresinin sabit büyüklüğü - piksel olarak (INDICATOR_HEIGHT özelliği) |
|
indicator_buffers |
Gösterge hesabı için kullanılacak tamponların sayısı |
|
indicator_plots |
Göstergedeki grafik serilerinin |
|
indicator_minimum |
Ayrı gösterge penceresi için ölçekleme taban limiti |
|
indicator_maximum |
Ayrı gösterge penceresi için ölçekleme tavan limiti |
|
indicator_labelN |
Veri Penceresinde görünen N-inci grafik serisi için etiket ayarlar. Birden çok gösterge tamponu gerektiren grafik serileri için (DRAW_CANDLES, DRAW_FILLING ve diğerleri) etiket isimleri ';' ayracı ile tanımlanır. |
|
indicator_colorN |
N çizgisinin görüntüleneceği renk. N burada grafik serisinin numarasıdır. Numaralama 1'den başlar |
|
indicator_widthN |
Grafik serisi için çizgi kalınlığı. N burada grafik serisinin numarasıdır. Numaralama 1'den başlar |
|
indicator_styleN |
Grafik serisi için ENUM_LINE_STYLE değerleriyle belirlenen çizim stili. N - grafik serisinin numarası, numaralama 1'den başlar |
|
indicator_typeN |
Grafiksel çizim tipi, ENUM_DRAW_TYPE sayımının değerleriyle belirlenir. N - grafik serisinin numarası, numaralama 1'den başlar |
|
indicator_levelN |
N'nin, ayrı gösterge penceresindeki yatay seviyesi |
|
indicator_levelcolor |
Göstergenin yatay seviyelerinin rengi |
|
indicator_levelwidth |
Göstergenin yatay seviyelerinin kalınlığı |
|
indicator_levelstyle |
Göstergenin yatay seviyelerinin çizim stili |
|
script_show_confirm |
|
Betiği çalıştırmadan önce, bir doğrulama penceresi göster |
script_show_inputs |
|
Betiği çalıştırmadan önce, özelliklerin olduğu bir pencere göster ve bu doğrulama penceresini işlevsiz hale getir |
tester_indicator |
"indicator_name.ex5" şeklinde verilen gösterge ismi. Eğer karşılık gelen parametre bir dizgi sabiti ile ayarlanmışsa, sınama gerektiren göstergeler, iCustom() fonksiyonunun çağrısından otomatik olarak tanımlanır. Diğer tüm durumlarda (IndicatorCreate() fonksiyonunun kullanımı veya sabit olmayan bir dizginin, fonksiyon ismini belirleyen parametrede kullanımı durumlarında) bu özellik gereklidir |
|
tester_file |
Sınama aracı için, uzantısı belirtilmiş şekilde, çift tırnak içinde (bir sabit dizgi olarak) dosya adı. Belirtilen dosya sınayıcıya aktarılır. Test edilecek girdi dosyaları - gerekli olanlar her zaman belirtilmelidir. |
|
tester_library |
Çift tırnak içinde, uzantılı olarak kütüphane adı. Bir kütüphane dll veya ex5 uzantılarına sahip olabilir. sınama gerektiren kütüphaneler otomatik olarak tanımlanır. Ama, kütüphanelerden herhangi biri özel göstergeler içinde kullanılırsa, bu özelik gereklidir |
|
tester_set |
Set dosyasının adı ile input parametresinin değeri ve adımı. Dosya test ve optimizasyondan önce tester'a gönderilir. Dosya adı bir uzantı ve bir çift teklif ile sabit string olarak belirtilmiştir.
Eğer EA ismini ve versiyon numarasını bir set dosyası içinde "<expert_name>_<number>.set" olarak ayarlarsanız, ardından <number> sürüm numarası altında otomatik olarak parametre sürümleri download menüsüne eklenir. Örneğin, "MACD Sample_4.set" adı, "MACD Sample.mq5" EA ile versiyon numarası 4'e eşit olan bir set dosyası anlamına gelir.
Format çalışmak için, test/optimizasyon ayarlarını elle strateji tester'a kaydetmenizi ve ardından bu şekilde oluşturulan set dosyasını açmanızı öneririz. |
|
tester_no_cache |
Optimizasyon uygulanırken, strateji sınayıcısı gerçekleşmiş olan tüm geçişlerin sonuçlarını optimizasyon önbelleğine kaydeder ve test sonucu da her bir girdi parametreleri kümesi için kaydedilir. Bu durum, yeniden hesaplama ile vakit kaybetmeden, hazır olan sonuçların aynı parametreler üzerindeki yeniden optimizasyon sırasında kullanılmasına olanak tanır.
Ancak bazı görevlerde (örneğin, matematik hesaplamalarında), hesaplamaların optimizasyon önbelleğindeki hazır sonuçların kullanılabilirliğinden bağımsız olarak yapılması gerekebilir. Bu durumda, dosya tester_no_cache özelliğini içermelidir. Test sonuçları yine de önbellekte saklanır, böylece strateji sınayıcısında gerçekleştirilen geçişler hakkındaki tüm verileri görebilirsiniz. |
|
tester_everytick_calculate |
Strateji Sınayıcısında göstergeler sadece verilerine erişildiğinde, yani gösterge tamponlarının değerleri talep edildiğinde hesaplanır. Her tik üzerinde gösterge değerleri elde etmeniz gerekmiyorsa, bu, çok daha hızlı bir test ve optimizasyon hızı sağlar.
tester_everytick_calculate özelliğini belirterek, her bir tik üzerinde göstergenin zorla hesaplanmasını sağlayabilirsiniz.
Aşağıdaki durumlarda da Strateji Sınayıcısındaki göstergeler her bir tik üzerinde zorla hesaplanır:
Bu özellik sadece Strateji Sınayıcısında geçerlidir; terminal de ise göstergeler her zaman, alınan her bir tik üzerinde hesaplanır. |
|
optimization_chart_mode |
Grafik türünü ve optimizasyon sonuçlarının görselleştirilmesi için kullanılacak iki girdi parametresinin adını belirtir. Örneğin, "3d, InpX, InpY"; sonuçların, test edilen InpX ve InpY parametre değerlerini temel alan koordinat eksenlerine sahip bir 3D grafikte gösterileceği anlamına gelir. Böylece, bu özelliği kullanarak, optimizasyon grafiğini ve grafik türünü program kodunda görüntülemek için kullanılacak parametreleri doğrudan belirleyebilirsiniz. Olası seçenekler:
İsteğe bağlı olarak, bir veya iki giriş parametresi belirtmeden yalnızca grafik türünü belirtebilirsiniz. Bu durumda; terminal, optimizasyon grafiğini göstermek için gerekli parametreleri seçecektir. |
Açıklama ve Versiyon Numarası için Örnek
#property version "3.70" // Uzman Danışmanın mevcut versiyonu
|
Her bir Gösterge Tamponu için Ayrı bir Etiket Belirleme Örneği ( "C open; C high; C low; C close")
#property indicator_chart_window
|