MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 162

 
hesaplamaya sipariş hacimlerini dahil etmeyi unutursunuz - o zaman hesaplama doğru olacaktır...
 
isiklik :
...

Lütfen biraz MQL4 kodu yazın

...
İşte özgür kodlama değil, kendi yazanlar için yardım. Kendiniz yapmaya çalıştığınız kodu gösterin, ancak çalışmıyor.
 

Huzurunuzu bozduğum için özür dilerim. Hayatımda ilk defa böyle bir şeyle karşılaştım. Kod yazabilseydim, kendim yazardım. Kendi danışmanımı oluşturmak istiyorum. Geriye sadece bu kodu yazmak kalıyor. Gerisini Forex EA Generator yardımıyla yaptım. Orada bu küçük parçayı kendi başıma yapma fırsatı bulamadım.

Başka bir yere bakacağım.

 
isiklik :

Arkadaşlar hadi arkadaş olalım. :)

Bu, işlemlerin açık fiyatlarını SATIN AL yönünde toplamanız, işlem sayısına bölmeniz ve 200 pip eklemeniz gereken TS'deki benim parçam. Ve SATIŞ yönünde 200 pip çıkarın.

Kim bana yardım edebilir ve kodu MQL4'e yazabilir?

X1 - X... açık işlemler

Y - açık işlem sayısı

Formül şöyle görünmelidir: X1 + X2 + X3 + X4 + X... / Y+200

Örneğin, AL'da açık 5 işlemim varsa, bunların toplanması, 5'e bölünmesi ve 200 eklenmesi gerekir. Ve SATIŞ'ta 8 işlem açılır, bunların da toplanması, 8'e bölünmesi ve 200 çıkarılması gerekir.


Lütfen biraz MQL4 kodu yazın


Çok teşekkürler!


//Профит для бая и селла
double tp_buy = AvgPrice( OP_BUY , 200 );
double tp_sell = AvgPrice( OP_SELL , 200 );




//Считаем среднюю цену открытия и прибавляем Отступ ( TP )
double AvgPrice ( int type, double TP= 0 )
   {
   double sum_price= 0 ;
   double sum_comission= 0 ;
   double avg_price= 0 ;
   double order_lots= 0 ;
   
   //складываем Лоты, Цену, Комиссии
   for ( int i= OrdersTotal ()- 1 ; i>= 0 ; i--)
      {
       bool i2= false ; while (i2== false && ! IsStopped ())i2= OrderSelect (i, SELECT_BY_POS , MODE_TRADES );
   
       if ( OrderType ()==type && OrderSymbol ()== _Symbol && Magic== OrderMagicNumber () && OrderCloseTime ()== 0 )
         {
         sum_price += OrderOpenPrice () * OrderLots ();
         order_lots += OrderLots ();
         sum_comission += OrderSwap ()+ OrderCommission ();
         }
      }
   
   //определяем среднюю цену и прибавляем Отступ
   if (order_lots> 0 )
      {
      sum_comission = sum_comission / order_lots / MarketInfo ( Symbol (), MODE_TICKVALUE ) * _Point ;
      
       if (type == OP_BUY )
         avg_price = sum_price / order_lots + sum_comission + TP* _Point ;
   
       else
         avg_price = sum_price / order_lots - sum_comission - TP* _Point ;
      }
   
   return ( NormalizeDouble (avg_price, _Digits ));
   }
 
Taras Slobodyanik :

Çok teşekkürler Taras!

Bu hataları verdi. Google'ı deneyeceğim.

hata 168: 'AvgPrice' - işlev tanımlanmadı
hata 168: 'AvgPrice' - işlev tanımlanmadı
hata 256: 'Büyü' - bildirilmemiş tanımlayıcı
Sonuç: 3 hata(lar), 0 uyarı(lar)
 
Kim bilir? AÇIYA GÖRE TREND ÇİZGİSİNİ hesaplamak için FORMÜL . Bu araç MT4'teki açıyı hangi değerlere göre hesaplıyor?
 
Taras Slobodyanik :


Google yardımcı olmuyor. AvgPrice ve Magic'te neyin yanlış olduğunu anlayamıyorum.

Anladığım kadarıyla bu kodda komisyonları, takasları, lotları hesaplıyor. Buna hiç ihtiyacım yok. :(

 
isiklik :


Google yardımcı olmuyor. AvgPrice ve Magic'te neyin yanlış olduğunu anlayamıyorum.

Anladığım kadarıyla bu kodda komisyonları, takasları, lotları hesaplıyor. Buna hiç ihtiyacım yok . :(

Evet, tam olarak buna ihtiyacınız olduğunu da %100 anladık.
 
Sergey Gritsay :
Bunu yapmak için, yerel bilgisayarın dışında bir sunucu oluşturmanız ve bu sunucu üzerinden sırasıyla MT için veri aktarmanız, bu verileri işleyen bir gösterge veya danışman yazmanız veya bazı VPS sunucularına terminaller koymanız ve bir fotokopi makinesi kurmanız gerekir. hesabınızdan arkadaşlarınızın hesaplarına yapılan işlemler. Diğer bir seçenek de bu seviyelere göre yapılan işlemlerinizi kopyalamak için sinyal servisini kullanmaktır. Genel olarak, burada uygun yazılımı sipariş etmek için finansal yeteneklerinizden yaklaşmanız gerekir.

Size geçmişi hatırlatmama izin verin. Günlük olarak csv'den veri alan ve bunları (yatay seviyeler) grafikte gösteren bir gösterge vardır. Bir ev dizüstü bilgisayarından bir sunucu oluşturuldu (zayıf, ancak hesaplamalara gerek yok ve csv verecek ve çok küçükler). Bağlantı testi için sunucuda normal bir forumun motorunu sular altında bıraktım - her şey dışarıdan görülebilir gibi görünüyor. Yardım tavsiyesi. Ondan csv dosyalarını okumak için sunucuda ne olmalı? Onlar. Gösterge csv veritabanına nasıl bağlanır? Belki sunucunun FTP motorunu veya başka bir şeyi doldurun ve belki MT için bazı özel bağlantı noktaları açmanız gerekiyor? Yoksa hiç yanlış yöne mi gittim? teşekkürler
 
MosheDayan :

Size geçmişi hatırlatmama izin verin. Günlük olarak csv'den veri alan ve bunları (yatay seviyeler) grafikte gösteren bir gösterge vardır. Bir ev dizüstü bilgisayarından bir sunucu oluşturuldu (zayıf, ancak hesaplamalara gerek yok ve csv verecek ve çok küçükler). Bağlantı testi için sunucuda normal bir forumun motorunu sular altında bıraktım - her şey dışarıdan görülebilir gibi görünüyor. Yardım tavsiyesi. Ondan csv dosyalarını okumak için sunucuda ne olmalı? Onlar. Gösterge csv veritabanına nasıl bağlanır? Belki sunucunun FTP motorunu veya başka bir şeyi doldurun ve belki MT için bazı özel bağlantı noktaları açmanız gerekiyor? Yoksa hiç yanlış yöne mi gittim? teşekkürler

MySQL'i kazın.