[ARŞİV] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 3. - sayfa 85

 
OTPOK :

Ve bir şey daha - Zaten açık bir siparişin stoploss'u programlı olarak nasıl değiştirilir?


https://docs.mql4.com/en/trading/OrderModify
 
FOReignEXchange :


Tünaydın. Değişkenlere asla değer biçmediğinizi anladım. Bu çok basit bir şekilde yapılır.

Fiyat Satın Al=Sor


Aslında: FiyatBuy=Teklif;
 
Roger :

Aslında: FiyatBuy=Teklif;

Peki, kimin ihtiyacı var. Ve eğer gerçekse, o zaman Sor.
 

Merhaba.

Lütfen delta*(2*Lot+Lot*(i-2))*(i-1)/2 sayı dizisinin toplamını hesaplama ifadesinin doğru yapılıp yapılmadığını söyleyin :

for (int i=1; i<=MaxOrders; i++) {

double Sum=Lot;

Toplam+=delta*(2*Parti+Parti*(i-2))*(i-1)/2; }

Hata yoksa, "Sum+" değeri X=("Sum+" + Y)/Z ???

Kod kaynağı:

 for ( int i= 1 ; i<=MaxOrders; i++)
   {
       if (BUY)
      {
         Price = NormalizeDouble (Ask-delta*i* Point , Digits );
         double Sum=Lot;
         Sum+=delta*( 2 *Lot+Lot*(i- 2 ))*(i- 1 )/ 2 ;
         DeltaProfitL = (Sum+i*delta*Lot+Lot*R_Lot*R_point+Lot*R_Lot*delta*i)/(( 2 *Lot+Lot*(MaxOrders- 1 ))*MaxOrders/ 2 +Lot+Lot*R_Lot);
         if (takeprofit!= 0 ) TP  = NormalizeDouble (Price + (takeprofit + DeltaProfitL*zero_tp)* Point , Digits ); else TP= 0 ;
         if (stoploss!= 0 )   SL  = NormalizeDouble (Price - stoploss* Point , Digits ); else SL= 0 ;     
         OPENORDER ( "Buy Limit" ,Price,SL,TP,i);
      }
   }

Şimdiden teşekkür ederim.

 
nemo811 :

Merhaba.

Lütfen delta*(2*Lot+Lot*(i-2))*(i-1)/2 sayı dizisinin toplamını hesaplama ifadesinin doğru yapılıp yapılmadığını söyleyin :

için (int i=1; i<=MaxOrders; i++)

çift Toplam=Lot;

Toplam+=delta*(2*Parti+Parti*(i-2))*(i-1)/2;

Hata yoksa, "Sum+" değeri X=("Sum+" + Y)/Z ???

Şimdiden teşekkür ederim.


Ve bu işe yaramayacak mı?

 for ( int i= 1 ; i<=MaxOrders; i++)

Sum=Sum+delta*( 2 *Lot+Lot*(i- 2 ))*(i- 1 )/ 2 ;

Yalnız neden Sum=Lot olduğu belli değil; Ve neden bu bile.

 
FOReignEXchange :


Yalnız neden Sum=Lot olduğu belli değil; Ve neden bu bile.

Benzer bir soruyu 81. sayfada sormuştum. Her şeyi bana verilen cevaba göre yaptım. Ama şu ana kadar bir sonuç yok.

Toplam=Toplam+delta*( 2 *Parti+Parti*(i- 2 ))*(i- 1 )/ 2 ; - benim hesaplamam için uygun değil.

 
delta*(2*Parti+Parti*(i-2))*(i-1)/2 söz konusu dizinin sayı formülüdür. TÜM sayıları belirli bir sırayla toplamam gerekiyor.
 
nemo811 :
delta*(2*Parti+Parti*(i-2))*(i-1)/2 söz konusu dizinin sayı formülüdür. TÜM sayıları belirli bir sırayla toplamam gerekiyor.


Bunun formülünü yazdım.

böyle bir şey hesaplaman gerektiğini anlıyorum

Tutar = delta*(2*Parti+Parti*( 1 -2))*( 1 -1)/2 + delta*(2*Parti+Parti*( 2 -2))*( 2 -1)/2 + delta*(2*Parti+Parti*( 3 -2))*( 3 -1)/2 + ... vb.

Bu, Toplam=Toplam+delta*(2*Lot+Lot*(i-2))*(i-1)/2 formülüdür, burada i için kısıtlamaları operatör gövdesinde kendiniz belirlersiniz. Sum operatörünün işlemi sonunda istenilen değeri alacaktır. Operatör hesaplamaları yapmaya başlamadan önce, başlamadan önce Toplamın sıfıra eşit olması önemlidir. Ve Sum operatöründen çıkıldığında istenilen değeri alacaktır.

 

İyi günler beyler, bir danışman sipariş etmenin ne kadara mal olacağını söyleyin ???

Oh evet, ve genel olarak aynı anda 2 farklı para biriminde (aynı anda iki grafikte) çalışmasını sağlamak ve her biri için farklı fırsatlar açmak mümkündür.

Örneğin, ilkinde SATIN ALDINIZ, ikincisinde ise tam tersine sattınız mı?

Ve anlaşmalardan biri kapandığında, zaten açılmış olan anlaşmanın tersini açtı....

Ve belki birileri bilir, belki doğada böyle bir danışman vardır, yoksa sadece aklıma gelen iyi bir fikirdir .....

 
for ( int i= 1 ; i<=MaxOrders; i++)
   {
       if (BUY)
      {
         Price = NormalizeDouble (Ask-delta*i* Point , Digits );
         double Sum= 0 ;
         Sum=Sum+delta*( 2 *Lot+Lot*(i- 2 ))*(i- 1 )/ 2 ;   ........
      }
}
Teşekkür ederim. Peki doğru olacak mı?
Neden: