[Arşivle!] BİRLİKTE DANIŞMAN YAZIYORUZ!!! - sayfa 20

 

İlkini okuduktan sonra 19. sayfadan kaldığımı anlıyorum ama açıklığa kavuşturalım:

1) arıza üzerinde çalışan bir danışmana dayanarak

2) arızaya karşılık gelmeyen diğer tüm fikirler bir kenara atılıyor mu?

3) Stratejileri sınıflandırmaya ve ardından 3-4 Uzman Danışman oluşturmaya değmez mi?

4) girişimleri fikir ve kodlarla desteklemeye hazır

5) Özür dilerim - önceki 18 sayfayı okumayı taahhüt ediyorum

 
evet, şimdiye kadar hiçbir özel öneri yok ... ne arıza ne de diğerleri ... şimdiye kadar sadece yazardan çok para birimi analizi (hedge) konusunda somut
 

O zaman benden ilk öneri:

olası çalışma seçeneklerine karar verelim (arıza, arıza yok, vb.). Kahretsin, bir yerde makaleler vardı, bu yüzden biri bana söylerse, biri bağlantıyı atarsa minnettar olurum.

 
Strateji ilkesine herkesin önem verdiğine inanıyorum, yeter ki kâr var...
 
sllawa3 >> :
Strateji ilkesine herkesin önem verdiğine inanıyorum, yeter ki kâr var...

Bu yaklaşımla, fenere kadar her şey olabilir.

Anladığım kadarıyla asıl mesele, yetkin teori tarafından desteklenen kodlama. Yazarın coşkusu bittiği için, öneririm - her şeyi yetişkin bir şekilde yapalım mı?????

1) Bay BookKeeper'ın belirli bir stratejisi vardır. Bir kişinin hafızası için ona dayalı bir Uzman Danışman oluşturalım. Strateji burada bulunabilir http://uploadbox.com/files/73dd564596/

2) Şimdilik karlılığına dikkat etmeyelim - uygulama süreci bize aşağıdaki projeler için bir başlangıç noktası olabilecek en dar noktaları anlatacaktır.

3) Yeni bir şube oluşturmayı öneriyorum (Umarım moderatörler aldırmaz) - 'BookKeeper'a dayalı Uzman Danışman' stratejisi oluşturma

 
caspermax >> :

O zaman benden ilk öneri:

olası çalışma seçeneklerine karar verelim (arıza, arıza yok, vb.). Kahretsin, bir yerlerde makaleler vardı, bu yüzden biri bana söylerse, biri bağlantıyı atarsa minnettar olurum.

19 sayfanın hepsini okuma zahmetine girmediyse ben anlatayım ;)

Başlangıçta, bir önceki günün en yüksek / en düşük seviyesinin bir dökümü için gerçekten bir fikir vardı. Aptalca sabit bir durma ve kârla giriyoruz. Uzun vadede böyle bir sistem, yaklaşık 1.0 profesyonel bir faktörle çalışır. Onlar. ne kadar kazanıyor, o kadar çok 50/50 birleşiyor. Buna dayanarak, 2009 test dönemini kullanarak danışmanın karlılığını artırmak için ek araçlar kullanmayı önerdim. EA'nın başlangıçta herhangi bir göstergesi, osilatörü, takibi, piyasadan çıkmak için herhangi bir kuralı, yani. hiç bir şey...

Bundan sonra, birkaç teklif geldi ve bir seçenek olarak, ben de çoklu para birimi göstergemi yayınlamaya karar verdim. Danışmana vidaladıktan sonra 2000'den sonuç aldım. (sayfa 9)

Ancak bir nedenden dolayı orijinal fikri unuttular ve göstergenin kendisini tartışmaya başladılar))) ve üzerine bir TS inşa ettiler. İşte kısa bir bakış :)

Ancak bugün, bir koparma fikrine geri döneceğim ve bir Uzman Danışman yayınlayacağım. tartışmaktan memnuniyet duyarım...

 
RomanS >> :

Başlangıçta, önceki günün en yüksek / en düşük seviyesinin dökümü için gerçekten bir fikir vardı ... Ama bir nedenden dolayı, orijinal fikri unuttular ve göstergenin kendisini tartışmaya başladılar)))

Hala benimkiyle çözüyorum .. Ama gösterge hesabına katılıyorum) İşlemler için filtre olarak bir şey kullanılmalı...

 
ALex2008 >> :

Hala benimkiyle çözüyorum .. Ama gösterge hesabına katılıyorum) İşlemler için filtre olarak bir şey kullanılmalı...


Evet, bu başlığı zaman zaman kontrol ediyorum.

nihai sonuçları görmek ilginç, her şeyin seninle neredeyse hazır olduğunu görüyorum ve sonra yoğun bir orman var)))

 

İlk sayfadakiyle aynı Uzman Danışman, yalnızca MACD sapması için bir kontrol ekledi. yani sapma gözlenmiyorsa kırılma yönünde açılır, varsa tam tersi olur. İşte şekildeki uzmanın çalışmasına bir örnek

Aynı zamanda zararı durdur, kar aldan 2 kat daha az ayarlanır.

İşte kod

 //+-----------------------------------------------------------------------+
//|                                                     Крокодил ГЕНА.mq4 |
//|                                                         Крокодил ГЕНА |
//+-----------------------------------------------------------------------+

  // Внешние переменные
  extern double TakeProfit = 1100 ; 
  extern double Lot        = 1 ;    
  extern string SYMBOL     = "EURUSD" ;
  
  // Глобальные переменные
  int LastTradeTime = 0 ;      // Время последней открытой сделки
  
  // Поехали... :)
  int start ( ) 
  {  
     int Ticket ;
  double BID ,
         ASK ,
         SL = 0 ,
         TP = 0 ;                                  
    bool Ans         = false ,
         Open_Bay_1  = false ,
         Open_Sell_1 = false ,
         Open_Bay_2  = false ,
         Open_Sell_2 = false ;

  // Критерии открытия позиций
    RefreshRates ( ) ;                                             
    BID = MarketInfo ( SYMBOL , 9 ) ;
    ASK = MarketInfo ( SYMBOL , 10 ) ;
    if ( BID > iHigh ( SYMBOL , PERIOD_D1 , 1 ) )
      {
       if ( iMACD ( SYMBOL , 15 , 12 , 26 , 9 , 0 , 0 , 0 ) > iMACD ( SYMBOL , 15 , 12 , 26 , 9 , 0 , 0 , iHighest ( SYMBOL , 15 , MODE_HIGH , 96 , 1 ) ) ) Open_Bay_1 = true ;
       if ( iMACD ( SYMBOL , 15 , 12 , 26 , 9 , 0 , 0 , 0 ) < iMACD ( SYMBOL , 15 , 12 , 26 , 9 , 0 , 0 , iHighest ( SYMBOL , 15 , MODE_HIGH , 96 , 1 ) ) ) Open_Sell_2 = true ;
      }
    if ( BID < iLow ( SYMBOL , PERIOD_D1 , 1 ) )
      {
       if ( iMACD ( SYMBOL , 15 , 12 , 26 , 9 , 0 , 0 , 0 ) < iMACD ( SYMBOL , 15 , 12 , 26 , 9 , 0 , 0 , iHighest ( SYMBOL , 15 , MODE_HIGH , 96 , 1 ) ) ) Open_Sell_1 = true ;
       if ( iMACD ( SYMBOL , 15 , 12 , 26 , 9 , 0 , 0 , 0 ) > iMACD ( SYMBOL , 15 , 12 , 26 , 9 , 0 , 0 , iHighest ( SYMBOL , 15 , MODE_HIGH , 96 , 1 ) ) ) Open_Bay_2 = true ;
      } 
        
  // Открытие позиций 1
      if ( Open_Bay_1 = = true & & OrdersTotal ( ) = = 0 & & TimeDay ( TimeCurrent ( ) ) ! = LastTradeTime )                                           
        {      
         SL = iLow ( SYMBOL , PERIOD_D1 , 0 ) ;
         TP = ASK + TakeProfit * Point ;
         Ticket = OrderSend ( SYMBOL , OP_BUY , Lot , ASK , 20 , SL , TP ) ;         
         LastTradeTime = TimeDay ( TimeCurrent ( ) ) ; // задаем время сделки, чтобы сегодня больше не торговать 
        }
     if ( Open_Sell_1 = = true & & OrdersTotal ( ) = = 0 & & TimeDay ( TimeCurrent ( ) ) ! = LastTradeTime )                                             
        {      
         SL = iHigh ( SYMBOL , PERIOD_D1 , 0 ) ;
         TP = BID - TakeProfit * Point ;
         Ticket = OrderSend ( SYMBOL , OP_SELL , Lot , BID , 20 , SL , TP ) ;         
         LastTradeTime = TimeDay ( TimeCurrent ( ) ) ;  // задаем время сделки, чтобы сегодня больше не торговать
        }
        
  // Открытие позиций 2
      if ( Open_Bay_2 = = true & & OrdersTotal ( ) = = 0 & & TimeDay ( TimeCurrent ( ) ) ! = LastTradeTime )                                           
        {      
         SL = BID - TakeProfit / 2 * Point ; 
         TP = ASK + TakeProfit * Point ;
         Ticket = OrderSend ( SYMBOL , OP_BUY , Lot , ASK , 20 , SL , TP ) ;         
         LastTradeTime = TimeDay ( TimeCurrent ( ) ) ; 
        }
     if ( Open_Sell_2 = = true & & OrdersTotal ( ) = = 0 & & TimeDay ( TimeCurrent ( ) ) ! = LastTradeTime )                                             
        {      
         SL = BID + TakeProfit / 2 * Point ;                                            
         TP = BID - TakeProfit * Point ;
         Ticket = OrderSend ( SYMBOL , OP_SELL , Lot , BID , 20 , SL , TP ) ;         
         LastTradeTime = TimeDay ( TimeCurrent ( ) ) ;   
        } 
   // Закрытие позиций
     for ( int i = 0 ; i < = OrdersTotal ( ) ; i + + )   
      {  
       if ( OrderSelect ( i , SELECT_BY_POS ) = = true )  
         {                                        
          if ( OrderSymbol ( ) ! = SYMBOL ) continue ;
          if ( OrderType ( ) = = 0 )
            {
             if ( OrderProfit ( ) > 0 & & TimeDay ( TimeCurrent ( ) ) ! = LastTradeTime )
             Ans = OrderClose ( OrderTicket ( ) , OrderLots ( ) , ASK , 20 ) ;
            }
          if ( OrderType ( ) = = 1 )
            {
            if ( OrderProfit ( ) > 0 & & TimeDay ( TimeCurrent ( ) ) ! = LastTradeTime )
            Ans = OrderClose ( OrderTicket ( ) , OrderLots ( ) , BID , 20 ) ;
            }
         } 
      }        
   return ;       
  }

Gün içinde kar al ulaşılmazsa pozisyonlar kapatılır, ancak pozisyon için belirli bir kar var, sonra pozisyonu kapatıyoruz.

İşte 01/01/2009'dan bugüne.

Bu arada, farklılığın tanımı sadece dikkate değer ve hatta komik, ama bir şekilde işe yarıyor. Daha iyi bir tanım için herhangi bir fikri olan var mı ...?

 
Koparma ilkesini yaklaşık bir yıl önce çeşitli şekillerde test ettim.. Bunun uygulanabilir olmadığını güvenle söyleyebilirim ... göstergelerin eksikliği ile ilgili olarak, her durumda fiyatın zaten bir gösterge olduğunu da fark edebilirim. . ve geri kalan her şey bunun türevleridir .. farklı ortalama dereceleri ile.. gecikmeler, vb.. Basit ve etkili bir ilkeye dayalı çok para birimli bir sistem yazmayı öneriyorum.. Bu, 2 hindi ölçek dışına çıktığında bir giriştir. aynı anda.. stokastik, vb. ayrıca, aynı anda birkaç zaman diliminde (örneğin, m1 ve )