Parti büyüklüğünü nasıl hesaplarım? - sayfa 3

 
chaffinsjc :

Diyelim ki mini hesabımda 10.000$ marj var ve bir sonraki işlemde %2 risk almak istiyorum (yani, <bir miktar> sözleşme satın almak için 200$ kullanın).

[Bunun sınırlı bir "risk" görüşü olduğunun farkındayım. StopLoss pipleri veya kar hedefleri veya her neyse ilgilenmiyorum.]

MetaTrader'ı kullanarak brokerımdan aşağıdaki mini hesap bilgilerini alıyorum:

accountLeverage = AccountLeverage (); // değer = 200
modeLotSize = MarketInfo("EURUSDm", MODE_LOTSIZE); // değer = 10000
modeLotStep = MarketInfo("EURUSDm", MODE_LOTSTEP); // değer = .01
modeMinLot = MarketInfo("EURUSDm", MODE_MINLOT) ); // değer = .01

SORU: 200$ için parti büyüklüğünü nasıl hesaplarım? (Minimum büyüklükteki partinin maliyetini bilmek faydalı olacaktır. Bu durumda minimum lot büyüklüğü .01'dir).

SORU: Parti büyüklüğü hesaplama formülü tüm döviz çiftleri için aynı mı?

Şimdiden çok teşekkür ederim.


Bakiyeye değil öz sermayeye dayalı iyi bir lot büyüklüğü hesaplayıcısı gönderiyorum. Birden fazla işleminiz varsa daha iyi.

 
Size parti büyüklüğü hesabımı gönderiyorum. Dengeye değil, özkaynağa dayalıdır. Birlikte 1'den fazla ticaret kullanırsanız daha iyi olur.
Dosyalar:
 

Belgelerde:

MODE_TICKVALUE

16

Mevduat para birimindeki değeri işaretleyin

MODE_TICKSIZE

17

Puan cinsinden kene boyutu


Beş basamaklı aracım için: mode_tickvalue = 1; mode_ticksize = 0.00001

Öyleyse neden her vücut bu satırı veriyor:

   double pipValue = MarketInfo( Symbol (),MODE_TICKVALUE);
  if ( Digits == 3 || Digits == 5 ) pipValue *= 10 ;

Bu yanlış değil mi?

 

Bu yanlış, yanlış yazılmış (?)

 double pipValue = MarketInfo( Symbol (),MODE_TICKVALUE);
  if ( Digits == 3 || Digits == 5 ) pipValue *= 10 ;

Şöyle olmalıdır: Eğer Rakamlar == 5 VE Piplerde çalışıyorsanız, o zaman ....

 if ( Digits == 3 || Digits == 5 ) pipValue *= 10 ;

Birisi Point'te çalışıyorsa, birisi Pips'i umursamaz.

 
ffoorr :

Belgelerde:

MODE_TICKVALUE

16

Mevduat para birimindeki değeri işaretleyin

MODE_TICKSIZE

17

Puan cinsinden kene boyutu


Beş basamaklı aracım için: mode_tickvalue = 1; mode_ticksize = 0.00001

Öyleyse neden her vücut bu satırı veriyor:

Bu yanlış değil mi?

   double pipValue = MarketInfo( Symbol (),MODE_TICKVALUE);
 if ( Digits == 3 || Digits == 5 ) pipValue *= 10 ;

Bu sadece insanların değerleri pip olarak girdiği zamanlar içindir. Puan genellikle 1 pip'e eşit değildir.
 
ffoorr : Bu yanlış değil mi?

Tick , PIP ve Point var. Genel olarak hepsi farklıdır. Bir tik, fiyattaki en küçük değişikliktir. A Noktası alıntılanan en az anlamlı basamaktır. Para birimlerinde pip 0.0001 (veya JPY 0.01 için) olarak tanımlanır.

4 basamaklı bir komisyoncuda bir puan (0.001) = pip (0.001). [JPY 0.01 == 0.01] 5 basamaklı bir komisyoncuda bir puan (0.00001) = 1/10 pip (0.00010/10). Fazladan bir rakam alıntılamanız bir pip'in değerini değiştirmez. (0.0001 == 0.00010) EA'lar pipleri puana ayarlamalıdır (mq4 için.) Para birimlerinde tik bir noktadır. Fiyat en önemsiz basamakla değişebilir (1.23456 -> 1.23457)

Metallerde bir Kene hala en küçük değişikliktir ancak bir noktadan daha büyüktür. Fiyat 123,25'ten 123,50'ye değişebilirse, TickSize'ınız 0,25 ve puanınız 0,01'dir. Pip'in bir anlamı yok.

Bu nedenle TickValue'u tek başına kullanmazsınız. Sadece TickSize ile oran olarak. DeltaValuePerLot()'a bakın

 
Roman Kramar :

Sorun tam olarak tanımlanmamıştır. %2 risk almak istediğinizi söylüyorsanız, değişkenlerden birini düzeltmeniz gerekir: zararı durdurma seviyesi veya ticaret hacmi. Parti büyüklüğünü hesaplamayı sorduğunuz için, bunun düzeltilmesini istemediğiniz anlamına gelir, ancak bu, istemediğinizi söylemenize rağmen zararı durdur pipleriyle ilgilenmenizi gerektirir. Zarar durdurunuz yoksa, %2 risk almak, sabit bir lot büyüklüğü, örneğin 1.0 almak ve mevcut kayıplarınız başlangıç marjının %2'sine ulaşana kadar beklemek anlamına gelir. Burada gördüğünüz gibi parti büyüklüğünü hesaplamanıza gerek yok.


Durdurma kaybı seviyesi görünüme girdiğinde, hesaplama basittir:


double tradeVolume = AccountFreeMargin () * Risk/100 / ( StopLossPoints * MarketInfo( Symbol(), MODE_TICKVALUE ) );


Yani, belirli bir ticaret için bir stoploss seviyesi verildiğinde, stoploss alınırsa her zaman ilk marjınızın belirtilen yüzdesini kaybedersiniz.


Ayrıca elde edilen değeri MODE_LOTSTEP ile normalleştirmek ve MODE_MINLOT ve MODE_MAXLOT ile sınırlamak isteyeceksiniz.

Açılan tüm sipariş büyüklüğümü USD cinsinden nasıl hesaplayabilirim?

 
magonicolas : Açılan tüm sipariş büyüklüğümü USD cinsinden nasıl hesaplayabilirim?
  1. Çift gönderi yapmayın! Bu konuyu zaten açmışsınız.
    Forumun genel kuralları ve en iyi uygulamaları. - Genel - MQL5 programlama forumu

  2. Anlamı yok. Kuartımı USD cinsinden nasıl hesaplarım?

    Asla hesabınızın küçük bir yüzdesinden fazlasını riske atmayın, kesinlikle işlem başına %2'den az, hesap için toplamda %6'dan az. Risk , ilk durdurma kaybınıza, lot büyüklüğüne ve çiftin değerine bağlıdır. Marj ve kaldıraca bağlı değildir.
    1. Durağı olması gereken yere yerleştirirsiniz - ticaret nedeninin artık geçerli olmadığı yere. Örneğin, bir destek sıçraması ticareti, durdurma desteğin altına düşer.
    2. AccountBalance * yüzde/100 = RISK = OrderLots * (|OrderOpenPrice - OrderStopLoss| * DeltaPerLot + CommissionPerLot) (Not OOP-OSL spread'i içerir ve DeltaPerLot genellikle 10$/pip civarındadır, ancak çiftin ve . hesap para biriminiz.)
    3. TickValue'u tek başına KULLANMAYIN - DeltaPerLot ve MODE_TICKVALUE öğesinin belgelerde vaat edildiği gibi mevduat para biriminizde bir değer döndürdüğünü veya enstrümanın temel para biriminde bir değer döndürüp döndürmediğini doğrulayın.
      MODE_TICKVALUE, birçok broker ile fx olmayan araçlarda güvenilir değil - MQL4 programlama forumu 2017.10.10
      Tick değeri için evrensel bir çözüm var mı? - Döviz Çiftleri - Genel - MQL5 programlama forumu 2018.02.11
      100 faktörlü parti değeri hesaplaması - MQL5 programlama forumu 2019.07.19
    4. Partileri düzgün bir şekilde normalleştirmeli ve min ve max değerlerine göre kontrol etmelisiniz.
    5. Stop out'tan kaçınmak için FreeMargin'i de kontrol etmelisiniz.

    Çoğu çift, PIP başına yaklaşık 10 ABD doları değerindedir. (Çok küçük) 5 PIP SL ile 5$'lık bir risk 5$/10$/5 veya maksimum 0.1 Lot'tur.

 
William Roeder :
  1. Çift gönderi yapmayın! Bu konuyu zaten açmışsınız.
    Forumun genel kuralları ve en iyi uygulamaları. - Genel - MQL5 programlama forumu

  2. Anlamı yok. Quartımı USD cinsinden nasıl hesaplarım?

    Asla hesabınızın küçük bir yüzdesinden fazlasını riske atmayın, kesinlikle işlem başına %2'den az, hesap için toplamda %6'dan az. Risk , ilk durdurma kaybınıza, lot büyüklüğüne ve çiftin değerine bağlıdır. Marj ve kaldıraca bağlı değildir.
    1. Durağı olması gereken yere yerleştirirsiniz - ticaretin nedeninin artık geçerli olmadığı yere. Örneğin, bir destek sıçraması ticareti, durdurma desteğin altına düşer.
    2. AccountBalance * yüzde/100 = RISK = OrderLots * (|OrderOpenPrice - OrderStopLoss| * DeltaPerLot + CommissionPerLot) (Not OOP-OSL spread'i içerir ve DeltaPerLot genellikle 10$/pip civarındadır, ancak çiftin ve . hesap para biriminiz.)
    3. TickValue'u tek başına KULLANMAYIN - DeltaPerLot ve MODE_TICKVALUE öğesinin belgelerde vaat edildiği gibi mevduat para biriminizde bir değer döndürdüğünü veya enstrümanın temel para biriminde bir değer döndürüp döndürmediğini doğrulayın.
      MODE_TICKVALUE, birçok broker ile fx olmayan araçlarda güvenilir değil - MQL4 programlama forumu 2017.10.10
      Tick değeri için evrensel bir çözüm var mı? - Döviz Çiftleri - Genel - MQL5 programlama forumu 2018.02.11
      100 faktörlü parti değeri hesaplaması - MQL5 programlama forumu 2019.07.19
    4. Partileri düzgün bir şekilde normalleştirmeli ve min ve max değerlerine göre kontrol etmelisiniz.
    5. Stop out'tan kaçınmak için FreeMargin'i de kontrol etmelisiniz.

    Çoğu çift, PIP başına yaklaşık 10 ABD doları değerindedir. (Çok küçük) 5 PIP SL ile 5$'lık bir risk 5$/10$/5 veya maksimum 0.1 Lot'tur.

Riskten bahsetmiyorum, sadece Açılan Emirlerin USD cinsinden miktarını bilmek istiyorum.

 
magonicolas :

Riskten bahsetmiyorum, sadece Açılan Emirlerin USD cinsinden miktarını bilmek istiyorum.

Lütfen çift gönderiyi DURDURUN !