MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 592
Ticaret fırsatlarını kaçırıyorsunuz:
- Ücretsiz ticaret uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
bana neden #property strict satırını eklerken okların burada çizilmeyi bıraktığını söyle, kodun tamamı
//+------------------------------------------- --------------------+
//| salınan inceleme.mq4 |
//| Telif Hakkı 2018, MetaQuotes Yazılım A.Ş. |
//| https://www.mql5.com |
//+------------------------------------------- --------------------+
#property telif hakkı "Telif Hakkı 2018, MetaQuotes Software Corp."
#özellik bağlantısı "https://www.mql5.com"
#özellik sürümü "1.00"
#özellik göstergesi_separate_window
#özellik göstergesi_buffers 5
#özellik göstergesi_plots 4
//--- arsaSignaler
#property Indicator_label1 "Signaler"
#özellik göstergesi_type1 DRAW_LINE
#özellik göstergesi_renk1 clrRed
#özellik göstergesi_style1 STYLE_SOLID
#özellik göstergesi_width1 1
//--- Z grafiği
#özellik göstergesi_etiket2 "Z"
#özellik göstergesi_type2 DRAW_LINE
#özellik göstergesi_color2 clrBej
#özellik göstergesi_style2 STYLE_DOT
#özellik göstergesi_width2 1
//--- arsa Körfezi
#özellik göstergesi_label3 "Körfez"
#özellik göstergesi_type3 DRAW_ARROW
#özellik göstergesi_renk3 clrLightSkyBlue
#özellik göstergesi_style3 STYLE_SOLID
#özellik göstergesi_width3 1
//--- arsa Sat
#özellik göstergesi_label4 "Sat"
#özellik göstergesi_type4 DRAW_ARROW
#özellik göstergesi_renk4 clrDeepPink
#özellik göstergesi_style4 STYLE_SOLID
#özellik göstergesi_width4 1
//--- giriş parametreleri
girdi int PCCI=14; // SGK gösterge periyodu
giriş çift KCCI=1.1; // seviyelendirme faktörü
giriş int PMOM=14; // Momentum gösterge periyodu
girdi int KMOM=1111; // seviyelendirme faktörü
giriş int PATR=14; // ATP gösterge periyodu
girdi int KATR=1111111; // seviyelendirme faktörü
girdi int PFOR=14; // Gösterge periyodunu zorla
girdi int KFOR=1111; // seviyelendirme faktörü
giriş int PTVR=12; // TVI göstergesinin p periyodu
giriş int PTVS=12; // TVI göstergesinden nokta
giriş int PTVU=5; // TVI göstergesinin periyodu
girdi int KTVl=111; // seviyelendirme faktörü
giriş int POSF=12; // AOC göstergesinin periyodu hızlı
giriş int POSS=26; // AOC göstergesinin yavaş dönemi
giriş int POSZ=9; // AOC göstergesinin nokta sma'sı
girdi int KAOS=111111; // seviyelendirme faktörü
girdi int KAD=111; // BP göstergesinin tesviye katsayısı
giriş çift KK=2.0; // oklar için filtre
input int Değişiklik=20; // gösterge penceresindeki okları sindirilebilir bir biçimde çizme
//--- gösterge arabellekleri
doubleSignalerBuffer[];
çift Z_Buffer[];
çift BayBuffer[];
çift SellBuffer[];
çift PatchBuffer[];
//+------------------------------------------- --------------------+
//| özel gösterge başlatma işlevi |
//+------------------------------------------- --------------------+
int OnInit()
{
GöstergeSetInteger(INDICATOR_DIGITS,0);
SetIndexBuffer(0,SignalerBuffer);
SetIndexBuffer(1,Z_Buffer);
SetIndexBuffer(2,BayBuffer);
SetIndexBuffer(3,SellBuffer);
SetIndexBuffer(4,PatchBuffer);
SetIndexStyle(0,DRAW_LINE);
SetIndexStyle(1,DRAW_LINE);
SetIndexStyle(2,DRAW_OK);
SetIndexStyle(3,DRAW_OK);
SetIndexArrow(2,241);
SetIndexArrow(3,242);
SetIndexEmptyValue(2,0.0);
SetIndexEmptyValue(3,0.0);
IndicatorShortName("Bodrum sinyali(" +(string) PATR + ")");
//---
dönüş(INIT_SUCCESSED);
}
//+------------------------------------------- --------------------+
//| özel gösterge yineleme işlevi |
//+------------------------------------------- --------------------+
int OnCalculate(const int oranları_toplam,
const int önceki_hesaplanmış,
const tarihsaat &saat[],
const double &aç[],
const çift &yüksek[],
const çift &düşük[],
const double &kapat[],
const uzun &tick_volume[],
const uzun &hacim[],
const int &spread[])
{
int i , limit=oranlar_toplam-önceki_hesaplanmış ;
çift cci,atr,anne,forc,ao,ac,ad,tvi,osma ;
//---- hesaplama parametrelerini ayarla
if(prev_calculated==0)limit--;
başka limit++;
//---- saymak
for(i=limit-1; i>=0; i--)
{
cci=iCCI(NULL,0,PCCI,PRICE_TYPICAL,i)/KCCI;
anne=(iMomentum(NULL,0,PMOM,PRICE_TYPICAL,i)-100)*KMOM ;
forc=iForce(NULL,0,PFOR,MODE_SMA,PRICE_TYPICAL,i)*KFOR;
tvi=iCustom(NULL,0,"TVI_v2",PTVR,PTVS,PTVU,4,i)*KTVl ;
osma=iOsMA(NULL,0,POSF,POSS,POSZ,PRICE_TYPICAL,i)*KAOS;
atr=iATR(NULL,0,PATR,i)*KATR;
ao=iAO(NULL,0,i)*KAOS ;
ac=iAC(NULL,0,i)*KAOS ;
ad=iAD(NULL,0,i)/KAD ;
SignalerBuffer[i]=(cci+mom+forc+tvi+osma+atr+ao+ac+ad)/9 ;
}
for(i=limit-1; i>=0; i--)
{
Z_Buffer[i] = (SignalerBuffer[i]+SignalerBuffer[i-1])/2 ;
PatchBuffer[i] = MathAbs(SignalerBuffer[i]-Z_Buffer[i]) ;
}
for(i=0; i<limit && !IsStopped(); i++)
{
if(Z_Buffer[i]>SignalerBuffer[i]&&Z_Buffer[i+1]<SignalerBuffer[i+1]&&PatchBuffer[i]>KK)
BayBuffer[i]=SignalerBuffer[i]-Değişiklik;
if(Z_Buffer[i]<SignalerBuffer[i]&&Z_Buffer[i+1]>SignalerBuffer[i+1]&&PatchBuffer[i]>KK)
SellBuffer[i]=SignalerBuffer[i]+Değişiklik;
}
//--- sonraki çağrı için prev_hesaplananın dönüş değeri
dönüş(oranlar_toplam);
}
//+------------------------------------------- --------------------+
Bu göstergenin satıcısına.
Danışmanın testi sırasında arabellekleri kopyalamayı reddederse, biri bana ne yapacağımı söyleyebilir mi?
Nedeni ortaya çıkarın.
Nedeni ortaya çıkarın.
Ve ne olabilir? Kod boyutunda mı? Tüm mantığı kasıtlı olarak kapattım, yalnızca arabelleği kopyalamayı bıraktım ve hiçbir şey yapmadım
Ve ne olabilir? Kod boyutunda mı? Tüm mantığı kasıtlı olarak kapattım, yalnızca arabelleği kopyalamayı bıraktım ve hiçbir şey yapmadım
Test başlatıldığında bellek yetersiz hatası oluşur (başlamaz). Nasıl tedavi edilir?
Terminali yeniden başlattıktan sonra test başlar ve birkaç testten sonra tekrar bellek yetersiz kalır.
Test başlatıldığında bellek yetersiz hatası oluşur (başlamaz). Nasıl tedavi edilir?
Terminali yeniden başlattıktan sonra test başlar ve birkaç testten sonra tekrar bellek yetersiz kalır.
Test edilen program tüm hafızanızı tüketiyor. İçindeki hataları arayın. Demodaki (test cihazında değil) "Journal" ve "Danışmanlar" dergilerine bir göz atın - orada ne yazıyor? Belki de bir zaman çerçevesi değişikliği sırasında bir bellek sızıntısı hakkında yazıyor.
Kod olmadan, daha fazla tahminde bulunmayacağım.
Test edilen program tüm hafızanızı tüketiyor. İçindeki hataları arayın. Demodaki (test cihazında değil) "Journal" ve "Danışmanlar" dergilerine bir göz atın - orada ne yazıyor? Belki de bir zaman çerçevesi değişikliği sırasında bir bellek sızıntısı hakkında yazıyor.
Kod olmadan, daha fazla tahminde bulunmayacağım.
Testin bitiminden sonra günlüklerde silinmemiş birçok nesne var. Birkaç bin ... Sorun bu mu?
Testin bitiminden sonra günlüklerde silinmemiş birçok nesne var. Birkaç bin ... Sorun bu mu?
Burada size kesin cevabı verebilirler.