Bir sınıf olarak satın al stop Sat stop Grid Expert Advisor - sayfa 3

 
Vladimir Karputov :

Sürüm 1.003:

  • şimdi, bir pozisyon açarken, TÜM zıt pozisyonlar kapalı.
  • cari fiyatları almak, PlacesBuy ve PlacesSell fonksiyonlarının içine taşındı - bu, boşluklara ve kaymalara karşı korumadır.
  • OnTradeTransaction'da bekleyen siparişler bir süre döngüsünde verilir - tabiri caizse, sunucuyu sonuna kadar zorluyoruz :) - en iyi çözüm değil, ama şimdilik öyle kalacak.

Aslında şimdi düşünebilirsiniz:

  1. Pozisyonları artırmanın en iyi yolu (lot hacimlerinin hesaplanması)
  2. Zıt pozisyonlarla ne yapmalı...


  1. Pozisyonları arttırmanın en iyi yolu (lot hacimlerinin hesaplanması) - hiçbir şekilde, lotu arttırmak bir piramittir, bu farklıdır, lot sabit bırakılmalıdır.
  2. Zıt pozisyonlarla ne yapmalı... - olduğu gibi yakın.
 

Bu göstergeyi "tester.tpl" şablonuna eklemenizi öneririm: LifeHack Balance Equity , ardından test cihazında bakiye ve fonlardaki değişikliği hemen görebilirsiniz. Aşağı yukarı şöyle:

Test cihazında LifeHack Balance Equity


 
Vladimir Karputov :

Feito. Conecte o Vault , Vault yapmak için projelendirme os arquivos gerçekleştirin.



Merhaba Vladimir, beni ekler misin lütfen? çok teşekkür ederim.

 
Cid Ougaske :


Merhaba Vladimir, beni ekler misin lütfen? çok teşekkür ederim.


Bitti eklendi.

Planlar, bu tür istatistikleri yürütmektir: darbeden önce arka arkaya bir yönde kaç pozisyon açık.

Örneğin: #1 Buy, #2 Buy, #3Buy ve #1Sell -> tüm Buy pozisyonlarını kapatın. Böylece istatistikler şu şekilde olacaktır: üç pozisyon.

 
Vladimir Karputov :

... şablonu bağlayın ve giriş parametrelerini EA sınıfına iletin



Bitti, bağlandı.

Bazen çok fazla parametre vardır. Son zamanlarda tembelleştim, bu şekilde yapıyorum, bu yaklaşımla parametreleri danışmana iletme konusunda endişelenmenize gerek yok. Buradaki dezavantajlar nelerdir?

 input double LotSize = 0.1 ;
input int     SL      = 500 ;
input int     TP      = 300 ;
//другие входные переменные

#include <AvLib\ClassEA.mqh> // тут лежит класс советника

CClassEA MyEA;
 

Vladimir, lütfen beni de bağla.

 

Expert Advisor'ın çalışması sırasında OnTradeTransaction'da diziye veriler yazılır. Kayıt formatı şu şekildedir: Alış pozisyonu açıksa "+1", Satış pozisyonu açılmışsa "-1" yazarız.

Örneğin:

  • Satın al - "+1" yaz
  • Satın al - "+1" yaz
  • Satın al - "+1" yaz
  • Sat - "-1" yaz

Test tamamlandıktan sonra OnTester'da dizi verileri işlenir ve bir csv dosyasına yazılır. Dosya, tüm istemci terminalleri \Terminal\Common\Files'ın ortak klasöründe oluşturulur. Dosya adı şu şekilde oluşturulur:

   string file_name= "Direction_of_trades" + "_" +m_symbol.Name()+ "_" + IntegerToString (StepGrid());

daha sonra dosya adına "csv" uzantısı eklenir:

   int filehandle= FileOpen (file_name+ ".csv" , FILE_WRITE | FILE_CSV | FILE_COMMON );

Dizi işleme algoritması: mevcut giriş öncekiyle aynı yönde ise (bu, aynı yönde arka arkaya birkaç pozisyonun açılmasına karşılık gelir) - o zaman mevcut giriş tersi ise sayaç bir artar önceki (bu, konum yönünün tersine çevrilmesine karşılık gelir) - daha sonra sayaca "1" değeri atanır.

Ortaya çıkan csv dosyası Excel'de uygun şekilde işlenir:

birinci adım: veri sütununa sol tıklayın

sol tık

ikinci adım: öne çıkan bir grafik ekleme

önerilen grafiği ekle


İşte elde edilen istatistikler ("35" ve "65" adımı için):

Direction_of_trades_EURUSD_35_65

 
Alexey Volchanskiy :

Vladimir, lütfen beni de bağla


Hazır. Eklendi (gönderiyi hemen görmedim, gözden kaçmış).

 

35. adım genişletilmiş toplamlar için:

Direction_of_trades_EURUSD_35

Burada görülüyor ki

  • tüm vakaların neredeyse %50'si, sürekli işlemlerin uzunluğunun "1"e eşit olduğu zamandır. Yani, şu gibi durumlarımız var: Açılan Al ve ardından pozisyonu tersine çevir (yani, kapalı Zararda al ve açık Sat) veya bu durum: Açıldı Sat ve sonra pozisyonu tersine çevirdi (yani, kapalı Zararda sat ve açıldı Satın almak). Bu nedenle, sürekli işlemlerin uzunluğunun "1"e eşit olduğu durumlar garantili bir kayıptır.
  • Buy örneğinde, sürekli işlemlerin uzunluğu "2"ye eşit olan tüm vakaların yaklaşık %25'i: Buy'u açtılar, sonra başka bir Buy açtılar ve sonra pozisyonu tersine çevirdiler (yani, iki Alış kapattılar ve Satış'ı açtılar - sonuç olarak, sıfıra eşit bir kayıp aldılar).

Bu çok sayıda kategorinin ("1" ve "2"ye eşit sürekli işlemlerin uzunluğu) Bekleyen Durdur emirleri verme stratejisini ayarlamak için daha ayrıntılı olarak ele alınması gerektiğini düşünüyorum.

Neden: