[UYARI, KONU KAPALI!] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde. - sayfa 806

 
Dersu :

İlgin için TEŞEKKÜRLER, drknn.

Dürüst olmak gerekirse, konularınızı okumadım - sadece bu konuya baktım, kimsenin tekrarlanan bir gönderiye cevap vermediğini gördüm, cevap vermeye karar verdim ... Bir şekilde arka arkaya her şey için yeterli zaman yok - seçici olmalısın.
 
extern string Settings = "Ana Ayarlar"; //
harici int SihirliSayı = 227; //Bireysel numara//
dış çift Lot = 1 ; //Minimum lot //
harici int Kar = 5000 ; //Kar almak //
harici int Kayıp = 10000; //Kaybı durdurmak //
harici int Delta = 500 ;
harici int Raznica = 700 ;
//------------------------------------------------ ---------------------------------//
extern string Gösterge2 = "Bantlar"; //
extern int BantlarPeriod = 20 ; //Dönem //
harici int Bands_shift = 0 ; //Telafi etmek //
dış çift sapmalar = 2.0 ; // //
//------------------------------------------------ ---------------------------------//
dış int Kayma = 5; //Kayma //////////////
int tik, tik2, git; //
//------------------------------------------------ ---------------------------------//
int start() //
{ /////////////////////////////
//------------------------------------------------ -------------------------------------------------- ------------ //
//Bant göstergesi //
//------------------------------------------------ -------------------------------------------------- ------------ //
double verhB=iBands(NULL,0,BandsPeriod,Bands_shift,Deviations,PRICE_CLOSE,MODE_UPPER,0);//Üst satır göstergesini hesapla//
double seredina=iBands(NULL,0,BandsPeriod,Bands_shift,Sapmalar,PRICE_CLOSE,0,0); // Orta çizgi göstergesini hesapla//
double nizB=iBands(NULL,0,BandsPeriod,Bands_shift,Sapmalar,PRICE_CLOSE,MODE_LOWER,0);//Alt satır göstergesini hesaplayın //
//------------------------------------------------ -------------------------------------------------- ------------ //
çift slb,tpb,sls,tps;
double go=(verhB-nizB);
Alert("verhB",DoubleToStr(verhB,Rakamlar));
Alert("nizB ",DoubleToStr(nizB,Rakamlar));
slb=NormalizeÇift(Sor - (Kayıp*Puan),Rakamlar) ;
tpb=NormalizeÇift(Sor + (Kar*Puan),Rakamlar);
sls=NormalizeÇift(Teklif + (Kayıp*Puan),Rakamlar) ;
tps=NormalizeÇift(Teklif - (Kar*Puan),Rakamlar);
if(Sipariş Toplamı()==0)
{
if(git<=Delta/10000)
Alert("Delta", DoubleToStr(go,Digits)," geliyor!!!");
tick =OrderSend(Symbol(),4,Lots,NormalizeDouble(Ask+Raznica*Point,Digits),Slip,slb,tpb,NULL,MagicNumber,0, CLR_NONE ); //Satın almak için giriş yapın//
if(tick<0) Print("Hata # - ",GetLastError());

tick=OrderSend(Symbol(),5,Lots,NormalizeDouble(Bid-Raznica*Point,Digits),Slip,sls,tps,NULL,MagicNumber,0,CLR_NONE); // Giriş köyleri //
if(tick<0) Print("Hata # - ",GetLastError());



}

dönüş (0);}


Düzeltmeye yardım edin!!!! Bir haftadır araba kullanıyorum!!! Sonuç olarak, bolingerin üst ve alt çizgileri arasında belirli bir mesafede, bir satın alma ve durdurma için iki gecikme ayarlanacaktır. Aradaki farkı hiçbir şekilde belirleyemiyorum çünkü bolinger üst ve alt çizgileri için fiyatın aynı olduğunu söylüyor.... Lütfen yardım edin......

 
fonksiyonlara yapılan yorumlara bakmayın yanlış
 
zhuki :
Muhtemelen lotunuz normalleştirilmemiştir, şunu kullanarak normale döndürün:
çift NormalizeÇift ( çift değer, int basamak)

Partiyi bir rakama yuvarlayamazsınız!!!
 
VOLDEMAR :
fonksiyonlara yapılan yorumlara bakmayın yanlış

dikkat et

double verhB=iBands(NULL,0,BandsPeriod ,Bands_shift , Sapmalar ,PRICE_CLOSE,MODE_UPPER,0);//Üst satır göstergesini hesapla//

double seredina=iBands(NULL,0,BandsPeriod, Bands_shift , Sapmalar ,PRICE_CLOSE,0,0); // Orta çizgi göstergesini hesapla //

double nizB=iBands(NULL,0,BandsPeriod, Bands_shift , Sapmalar ,PRICE_CLOSE,MODE_LOWER,0);//Alt satır göstergesini hesapla //

onları değiştir

 
Konu dışıyım! standart araçları kullanarak alpari için Puan = 0.00001 (5 basamak) nasıl elde edilir ???
 
ruslanchik :
Konu dışıyım! standart araçları kullanarak alpari için Puan = 0.00001 (5 basamak) nasıl elde edilir???
 double point( string symb){
   double p = 0 ;        
   int d = 0 ;
        
   p = MarketInfo(symb, MODE_POINT);    
   d = MarketInfo(symb, MODE_DIGITS);
   if (d == 5 || d == 3 ) p *= 10 ;
   return (p);
}
 
TAMAM!
 

Tünaydın

Birisi gösterge koduna bakar - ayarlara hiç uymuyor.

Ve ben kodlarda bir meslekten değilim

//---- gösterge ayarları
#özellik göstergesi_separate_window
#özellik göstergesi_tamponları 1
#özellik göstergesi_color1 Gümüş
//---- gösterge parametreleri
harici int FastEMA=12;
harici int YavaşEMA=26;
harici int SignalSMA=9;
//---- gösterge tamponları
çift ind_buffer1[];
çift ind_buffer2[];
çift ind_buffer3[];
çift ind_buffer4[];

//+------------------------------------------- --------------------+
//| özel gösterge başlatma işlevi |
//+------------------------------------------- --------------------+
int init()
{
//---- Sayım için 2 ek tampon kullanılır.
Gösterge Tamponları(4);
//---- çizim ayarları
SetIndexStyle(0,DRAW_LINE);
SetIndexDrawBegin(0,SignalSMA);
IndicatorDigits(MarketInfo(Symbol(),MODE_DIGITS)+2);
//---- 3 gösterge arabelleği eşlemesi
if(!SetIndexBuffer(0,ind_buffer1) &&
!SetIndexBuffer(1,ind_buffer2) &&
!SetIndexBuffer(3,ind_buffer4) &&
!SetIndexBuffer(2,ind_buffer3))
Print("gösterge arabellekleri ayarlanamıyor!");
//---- DataWindow ve gösterge alt pencere etiketi için isim
GöstergeKısaAdı();
//---- başlatma tamamlandı
dönüş(0);
}
//+------------------------------------------- --------------------+
//| Osilatörün Hareketli Ortalaması |
//+------------------------------------------- --------------------+
int başlangıç()
{
int limiti;
int counted_bars=IndicatorCounted();
//---- olası hataları kontrol et
if(counted_bars<0) return(-1);
//---- son sayılan çubuk yeniden sayılacak
if(counted_bars>0) counted_bars--;
limit=bars-counted_bars;
//---- 1. ek tamponda sayılan macd
for(int i=0; i<limit; i++)
ind_buffer2[i]=iOBV(NULL, 0, PRICE_CLOSE, i);
//---- 2. ek tamponda sayılan sinyal hattı
for(i=0; i<limit; i++) {
ind_buffer3[i]=iMAOnArray(ind_buffer2,Barlar,10,0,MODE_SMA,i);
ind_buffer4[i]=iMAOnArray(ind_buffer2,Barlar,3,0,MODE_SMA,i);
}
//---- Ana döngü
for(i=0; i<limit; i++)
ind_buffer1[i]=ind_buffer2[i]-ind_buffer3[i];
//---- tamamlamak
dönüş(0);
}
//+------------------------------------------- --------------------+

xtern int FastEMA=12;
harici int YavaşEMA=26;
harici int SignalSMA=9; Ayarlar burada. Penceredeki değişiklikler hiçbir şey yapmaz. Gösterge çizgisi değişmez.

Yazar itirazımı hackledi

 
Görünüşe göre sen. taslak veya eksik kod. Göstergenin sabit ayarları vardır, kodda harici değişkenlerin hiçbiri kullanılmaz.
Neden: