Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz, hiçbir yerde - 6. - sayfa 107

 

FEAR :

iyi cevap

Ve en önemlisi - sadık ...
 
VladislavVG :


bool SLowTen = (Açık[ 1 ]==Düşük[ 1 ]); // yükseliş mumunun alt gölgesinin olmaması

Gerçek sayıları doğru bir şekilde nasıl karşılaştıracağınızı öğrenmek için forumda arama yapın.

Herkes bir sanatçıyı gücendirebilir, doğru yazarlar. Eleştiriyi seviyorum - yapıcı. Çirkin kodu biliyorum.

Bu konuyla ilgili sadece bir soru daha - mumun boyutunun 60 puandan fazla olması durumunda (beş işaretli ) nasıl kayıt olunur.

 
alexey1979621 :

Bir sanatçıyı herkes gücendirebilir, doğru yazarlar. Eleştiriyi seviyorum - yapıcı. Çirkin kodu biliyorum.

İşte konuyla ilgili sadece bir soru daha - mumun boyutunun 60 puandan fazla olması durumunda (beş işaretli) nasıl kayıt olunur.


ikili karşılaştırma:

 if ( NormalizeDouble (p1-p2, Digits )< 0.5 * Point ) {
   // Значит равны
   }

mumun boyutunun 60 puntodan fazla olması durumunda (beş işaretli ) nasıl yazılır.

 if (размер_свечи> 60 * Point ) {}
 
artmedia70 :

ikili karşılaştırma:

mumun boyutunun 60 puandan fazla olması durumunda (beş basamaklı) nasıl reçete yazılacağı.


Aptallığım için üzgünüm ama p1 ve p2 sırasıyla Yüksek ve Düşük mumlar mı? 0,5 ne anlama geliyor?

Mevcut koduma uygulandı

   double STelo = MathAbs (Close[ 1 ]-Open[ 1 ])/ Point ; // тело бычьей свечи
   double SHighTen = (High[ 1 ]-Close[ 1 ])/ Point ; // верхняя тень бычьей свечи
   bool SLowTen = (Open[ 1 ]==Low[ 1 ]);     // отсутствие нижней тени бычьей свечи
  
   
   double Razmer_1 = (High[ 1 ]-Low[ 1 ])/ Point ; // размер свечи

        
   if (Volume[ 0 ]> 1 ) return ;

   if (Open[ 1 ]<Close[ 1 ] && SHighTen > 5 *STelo && SLowTen == true && Razmer_1 > 60*Point)


Я правильно должен прописать: 
   double STelo = MathAbs (Close[ 1 ]-Open[ 1 ])/ Point ; // тело бычьей свечи
   double SHighTen = (High[ 1 ]-Close[ 1 ])/ Point ; // верхняя тень бычьей свечи
   bool SLowTen;

   if ( NormalizeDouble (Open[ 1 ]-Low[ 1 ], Digits )< 0.5 * Point )   // отсутствие нижней тени бычьей свечи
  
   
   double Razmer_1 = (High[ 1 ]-Low[ 1 ])/ Point ; 

        
   if (Volume[ 0 ]> 1 ) return ;

   if (Open[ 1 ]<Close[ 1 ] && SHighTen > 5 *STelo && SLowTen == true && Razmer_1 > 60 * Point ) // продажа
 
alexey1979621 :

Bir sanatçıyı herkes gücendirebilir, doğru yazarlar. Eleştiriyi seviyorum - yapıcı. Çirkin kodu biliyorum.

İşte konuyla ilgili sadece bir soru daha - mumun boyutunun 60 puandan fazla olması durumunda (beş işaretli) nasıl kayıt olunur.



Bu, casusluk değil, anlamanız gereken temel bilgidir. Soru forumda o kadar çiğnenmiş ki, sadece çok tembel bir kişi cevabı bulamayacak ve çözemeyecek. Ve bu arada, bu sizin için çok daha faydalıdır.

Ve kodun çirkinliği hakkında - bu benim için değil. Bana gelince, bu oldukça normal bir numara: kodun okunabilirliğini artırmak için ek değişkenler eklemek.

 
artmedia70 :

ikili karşılaştırma:



Bu durumda

 if ( NormalizeDouble (p1-p2, Digits )< 0.5 * Point ) {
   

NormalizeDouble() gereksizdir;).

 
VladislavVG :


Bu durumda

NormalizeDouble() gereksizdir;).

Ve sonra ona neden normalleşme olmadığını, ancak normalleşme ile ticaret emirlerinde fiyatlar ile açıklayın? Bu yüzden buraya normalleştirmeye girdim, böylece daha sonra bir ticaret talebinde fiyatlar normalleştirilmeden gönderildiğinde gözlerimi devirmezdim.
 
artmedia70 :
Ve sonra ona neden normalleşme olmadığını, ancak normalleşme ile ticaret emirlerinde fiyatlar olduğunu açıklayın? Bu yüzden burada normalleştirmeye girdim, böylece daha sonra fiyatlar bir ticaret emrinde normalleştirilmeden gönderildiğinde gözlerimi devirmezdim.


)))))))))))))))) evet, bu bir argüman.
 
VladislavVG :

)))))))))))))))) evet, bu bir argüman.
Sanırım zamanla nerede gerekli olduğunu ve nerede gerekli olmadığını anlayacaktır. Ancak normalleşmeye ihtiyaç olduğu hemen akılda tutulacaktır. Ama onsuz yapabildiğinizde - bu zaten bilginin bir sonraki aşamasında ...;) Bu gibi nedenlerle ...
 
İnsanlar lütfen yardım edin. 5 gün oldu çözemedim. Expert Advisor'da gerekli kriterler tetiklendiğinde emrin stop loss'u değiştirilecek şekilde yapılır. Ve zararı durdur - ayarlanması gereken, son kapatılan siparişten kâr edin. Ancak değişiklik başladığında, robot her zaman 1.0000'lık bir stop loss koyar. Sorunun ne olduğunu anlamıyorum. Zaten kafasını kırdı. Herkesin bir dizi seçeneği var mı - mevcut siparişin stop loss üzerine önceki siparişin alınması nasıl yapılır?