sorun, gösterge kodunun ea'ya nasıl ekleneceğidir?
Belirli sınırlamalarla yapabilirsiniz, ancak iCustom'u kullanmak çok daha kolaydır.
Ama gerçekten istiyorsanız: Bir Gösterge Kodunu Uzman Danışman Koduna Aktarmak. Gösterge Yapısı - MQL4 Makaleleri
Stokastik için iCustom gerekli değildir
parametreler:
Örneklem: if(iStochastic(NULL,0,5,3,3,MODE_SMA,0,MODE_MAIN,0)>iStochastic(NULL,0,5,3,3,MODE_SMA,0,MODE_SIGNAL,0)) dönüş(0); |
ea içine rvi göstergesi eklemeye ne dersiniz?
ayrıca stokastik ekleme yöntemiyle aynı kodu mu kullanıyorsunuz?
ea içine rvi göstergesi eklemeye ne dersiniz?
ayrıca stokastik ekleme yöntemiyle aynı kodu mu kullanıyorsunuz?
iCustom() veya iRVI()
ea içine rvi göstergesi eklemeye ne dersiniz?
ayrıca stokastik ekleme yöntemiyle aynı kodu mu kullanıyorsunuz?
işte bu sabah yaptığım kod.
düzeltmeme yardımcı olabilecek var mı??
//+------------------------------------------- -------------------+
int init()
{
//---- gösterge arabellek eşlemesi
SetIndexBuffer(0,Buffer);
SetIndexBuffer(1,SignalBuffer);
//---- gösterge çizgisi
SetIndexStyle(0,DRAW_LINE);
SetIndexStyle(1,DRAW_LINE);
//---- çizim ayarları
SetIndexDrawBegin(0,RVIPeriod+3);
SetIndexDrawBegin(1,RVIPeriod+7);
//---- DataWindow ve gösterge alt pencere etiketi için isim
GöstergeShortName("RVI("+RVIPeriod+")");
SetIndexLabel(0,"RVI");
SetIndexLabel(1,"RVIS");
//---- başlatma tamamlandı
dönüş(0);
}
{
çift teklif =MarketInfo(Symbol(),MODE_BID); // Bid değeri için istek
çifte sor =MarketInfo(Symbol(),MODE_ASK); // Ask değeri için istek
çift nokta =MarketInfo(Symbol(),MODE_POINT);//Puan Talebi
dönüş; // start()'tan çık
if(AccountFreeMargin()<100)
Print("Paramız yok. Serbest Marj = ", AccountFreeMargin());
dönüş(0);
}
int başlangıç()
{
{
int i,j,nLimit,nCountedBars;
çift dValueUp,dValueDown,dNum,dDeNum;
//----
if(Bars<=RVIPPeriod+8) return(0);
//----
nCountedBars=IndicatorCounted();
//---- olası hataları kontrol et
if(nCountedBars<0) dönüş(-1);
//---- son sayılan çubuk yeniden sayılacak
nLimit=Barlar-RVIPeriod-4;
if(nCountedBars>RVIPeriod+4)
nLimit=Barlar-nCountedBars;
//---- 1. tamponda sayılan RVI
for(i=0; i<=nLimit; i++)
{
dNum=0.0;
dDeNum=0.0;
for(j=i; j<i+RVIPeriod; j++)
{
dValueUp=((Kapat[j]-Aç[j])+2*(Kapat[j+1]-Aç[j+1])+2*(Kapat[j+2]-Aç[j+2]) +(Kapat[j+3]-Aç[j+3]))/6;
dValueDown=((Yüksek[j]-Düşük[j])+2*(Yüksek[j+1]-Düşük[j+1])+2*(Yüksek[j+2]-Düşük[j+2]) +(Yüksek[j+3]-Düşük[j+3]))/6;
dNum+=dValueUp;
dDeNum+=dValueDown;
}
if(dDeNum!=0.0)
Tampon[i]=dNum/dDeNum;
başka
Tampon[i]=dNum;
}
//---- 2. tamponda sayılan sinyal hattı
nLimit=Barlar-RVIPeriod-7;
if(nCountedBars>RVIPPeriod+8)
nLimit=Barlar-nCountedBars+1;
for(i=0; i<=nLimit; i++)
SignalBuffer[i]=(Tampon[i]+2*Tampon[i+1]+2*Tampon[i+2]+Tampon[i+3])/6;
//----
dönüş(0);
}
{
OrderSend(Symbol,LotSize,Ask,StopLoss,TakeProfit,0,0);
eğer (Kapat<i)
OpenBuy();
dönüş(0);
OrderSend(Symbol,LotSize,Bid,StopLoss,TakeProfit,0,0);
eğer (Kapat>i)
OpenSell();
dönüş(0);
}
double GetSizeLot() { return(LotSize); }
double GetTakeProfitBuy() { return(Sor+TakeProfit*Puan); }
double GetTakeProfitSell() { return(Teklif Al-Kar*Puan); }
double GetStopLossBuy() { return(Bid-StopLoss*Puan); }
double GetStopLossSell() { return(Sor+StopLoss*Puan); }
string GetCommentForOrder() { return();}
dönüş(0); }
Konu açmadan önce lütfen diğer konuları okuyunuz. . . o zaman bunun gibi sayısız istek görürdünüz:
Lütfen kodu göndermek için bunu kullanın. . . okumayı kolaylaştırır.işte bu sabah yaptığım kod.
düzeltmeme yardımcı olabilecek var mı??
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
yukarıda bahsettiğim gibi stokastik kodlama ile bir tane yapmak istiyorum.
sorun, gösterge kodunun ea'ya nasıl ekleneceğidir?