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

 
obla4ko :
Bir danışmanı bir sopayla karşılaştıramazsınız - bu ince bir şey :))), sanal, diyebilirim ve doğal olarak, tarihteki sahtekarlıklara tepki vermeli. Silinmelere tepki vermeseydi, gerçek hayatta nasıl yavaşlayacağını hayal edebiliyorum - yılda 10 bin dolar - en iyi ihtimalle ... eh, parayı bankada tutmak daha kolay - 3-6 veriyorlar yüzde orda :))

))) Bitti, daha kolay! Kim tartışıyor... // Ve bunun kolay olacağını kim söyledi? )))

Alternatif olarak, borsaya gidin. Temelde böyle bir şey yok. Ve böylece ... herkesin önünde - buna nasıl sansür denir - hmm ... bir handikapta bile tuhaflıklar üzerinde çalışabilirsiniz.

En iyi yol, elbette, gerçek bir testtir. Danışmanda belirtilen ilkeler doğruysa (ve bu kesinlikle test cihazında kontrol edilebilir), o zaman mücbir sebep önlemleri gerçek olarak ayarlandığında, ticaret ++ olacaktır. Belki test cihazında olduğu gibi +++++++'da değil, ama yine de ...)))

Bu arada, kırpma boşlukları, ktr. göstergeler sizi çıldırtıyor, alıntı akışından çok yardımcı oluyor. Kodlarıma bakabilirsin - Kill Gap.

 

Techno :
obla4ko, создайте переменную типа datetime x, и пусть это будет время открытие бара, на котором произошел стоплосс. А в условии открытия поставте, что (Time[0]!=x). При этом x должно обновляться при новом сработавшем стоплосе. Это первый вариант. И второй как я уже в третий раз пишу, после срабатывания стопа включить ожидание 1 бар, это будет совершенно тоже самое, не логично разве?

Son yazımda, pozisyon açmaktan sorumlu kodun bir kısmını yayınladım. Buraya söylediklerinizi buraya yazar mısınız - dedikleri gibi "bir kez görmek ...."den iyidir :)
 

Merhaba!!!

Bu konunun 71. sayfasında granit77 çok ilginç bir makale yazdı!

Извините, что встреваю, поделюсь ламерским способом удобной записи множества условий. При наладке легко добавлять/убирать, не заботясь о скобках, и все наглядно. 
if (true
    && StochK_0 < StochD_1
    && StochD_1 > 80 
    && cci_0 < cci_1    
    && cci_0 > 100 
    //&& .... а это я пока убрал     
   )

işte örnek ve bir şeyler yapmaya çalıştım

 if (((Sto_0>Sto_1&&Sto_0< 20 )&&(OsMA_0>OsMA_1&&OsMA_0<-P)&&(Macd_0>Macd_1&&Macd_0<-N)))
// это основа
if ( true
      &&Sto_0>Sto_1&&Sto_0< 20
      &&OsMA_0>OsMA_1&&OsMA_0<-P
      &&Macd_0>Macd_1&&Macd_0<-N
      ) //а это то что получилось

Çok garip olduğu için soruyorum...

 

Bu neden işe yarıyor ve bir değişkenin değerini yüzde 10 artırmayı doğru bir şekilde düşünüyor:

TStartS = MathRound (TStartS+TStartS* 0.1 );

... ama bu artmaz:

TStartS = MathRound (TStartS+TStartS/ 100 *PercentTakePr); // где PercentTakePr - внешняя переменная, равна 10, 20, 30, и т.д. ...
fark nedir - öldür - anlamıyorum ...
 
artmedia70 :

Bu neden işe yarıyor ve bir değişkenin değerini yüzde 10 artırmayı doğru bir şekilde düşünüyor:

... ama bu artmaz:

fark nedir - öldür - anlamıyorum ...





belki bu yüzden

TStartS = MathRound (TStartS+(TStartS/ 100 *PercentTakePr)); 
 

Sorun ne? İçeriği değiştirmeden dizeyi alt dizelere ayırmanız yeterlidir. Her şey aynı şekilde çalışacak, ancak okuması ve düzenlemesi daha kolay, sadece gereksiz satırları yorumlayın.

Sonra ortaya çıktı ki, profesyoneller uzun zamandır bu şekilde yazıyorlar, hatta daha iyi biçimlendirdiler, ben de tekerleği icat ettim. :))

if (true              &&
    StochK_0 < StochD_1 && 
    StochD_1 > 80     &&  
    && cci_0 < cci_1  &&   
    && cci_0 > 100 
   )

//((Sto_0>Sto_1&&Sto_0< 20 )&&(OsMA_0>OsMA_1&&OsMA_0<-P)&&(Macd_0>Macd_1&&Macd_0<-N))
// Ваш вариант вот так будет выглядеть наиболее прозрачно, на мой взгляд
if (true                         &&
    (Sto_0 >Sto_1  && Sto_0 < 20 ) &&
    (OsMA_0>OsMA_1 && OsMA_0<-P) &&
    (Macd_0>Macd_1 && Macd_0<-N)  
   ) 
 
artmedia70 :

Bu neden işe yarıyor ve bir değişkenin değerini yüzde 10 artırmayı doğru bir şekilde düşünüyor:

... ama bu artmaz:

fark nedir - öldür - anlamıyorum ...





0.1 çift ve 100 int'dir.

Tip dökümü için öğreticiye bakın.

 
Svinozavr :

0.1 çift ve 100 int'dir.

Tip döküm için öğreticiye bakın.

Yani orada TÜM değişkenlerim var ... Görünüşe göre ... ah ... ne halt ... seçmeye devam etti ...

Bu ne işe yarar:

LastTakeProfitS = MathRound (LastTakeProfitS+LastTakeProfitS/ 100 *PercentTakePr);
... ve aynı türden aptalca farklı bir değişkeni buraya yapıştırırsanız, artık çalışmıyor... Sabah, tamamen aklımı başımdan aldı...
 
obla4ko :

Son yazımda, pozisyon açmaktan sorumlu kodun bir kısmını yayınladım. Buraya söylediklerinizi buraya yazar mısınız - dedikleri gibi "bir kez görmek ...."den iyidir :)

İşte şematik. Kontrol etmedim, ancak çalışması gerekiyor, eksik parçaları orijinal koddan eklemek sıkıcı. Kırmızı, değişimi beklentiyi artıracak sayıyı, 2 sayısı ise bir mum beklediğimiz anlamına gelir. 2 muma ihtiyacınız varsa, bekleyin, üç mum koyun, vb.

 bool work=1; int tick; datetime t;
int start()
{
   if (!work){ if (t!=iTime( NULL , 0 , 1 )){t=iTime( NULL , 0 , 1 );tick++;}}
   if (tick== 2 ){work= 1 ;tick= 0 ;} 
   
   time();
   if ( OrdersTotal ()== 0 )CheckForOpen();
   //-- code
}
//----
void CheckForOpen()
{
   double ma;
   int     res;
    
   ma= iMA ( NULL , 0 ,MovingPeriod,MovingShift, MODE_SMA , PRICE_CLOSE , 0 );

   if (work && Open[ 1 ]>ma && Close[ 1 ]<ma)  
     {
      res= OrderSend ( Symbol (),OP_SELL,Lots,Bid, 30 ,Bid+Stoploss* Point ,Bid-Takeprofit* Point , "" ,MAGICMA, 0 , Red );
       return ;
     }

   if (work && Open[ 1 ]<ma && Close[ 1 ]>ma)  
     {
      res= OrderSend ( Symbol (),OP_BUY,Lots,Ask, 30 ,Ask-Stoploss* Point ,Ask+Takeprofit* Point , "" ,MAGICMA, 0 , Blue );
       return ;
     }

}
//----
void time()
{
static datetime time;
    
   if (OrdersHistoryTotal()== 0 ) return ;
   for ( int i= 0 ;i<OrdersHistoryTotal();i++)
       {
       OrderSelect (i,SELECT_BY_POS,MODE_HISTORY);
         if (OrderCloseTime()>time && OrderSymbol()== Symbol () && OrderMagicNumber()==MAGICMA)
            {
            time=OrderCloseTime();
             if (OrderProfit()< 0 )work= 0 ;
            }
       }    
   
}
 
artmedia70 :

Yani orada TÜM değişkenlerim var ... Görünüşe göre ... ah ... ne halt ... seçmeye devam etti ...

Bu ne işe yarar:

... ve aynı türden aptalca farklı bir değişkeni buraya yapıştırırsanız, artık çalışmıyor... Sabah, tamamen aklımı başımdan aldı...


İşte bu ... kendim buldum ... 100 yerine - aptalca 100.0 ... nafig'i öldürürdüm ...