Marj nasıl hesaplanır? - sayfa 4

 
Janis Ozols :

Toplam lottaki bir artış veya başka bir nedenden dolayı enstrümanın kaldıracı değiştiyse, bu sorguların artan bir marj getirmesini beklemek mantıklı olur, değil mi?

Hayır, bu işlevler hesap kaldıracı kullanır.

 
Andrey Khatimlianskii :

Evet bu doğru.

Yalnızca, büyük olasılıkla kaldıraç, tek bir işlem için değil, bir bütün olarak araç için değişir, ancak bu özü değiştirmez.

Bu durum için muhbirime bir uyarı ekleyeceğim...

Bilge, imhenko

 
Andrey Khatimlianskii :

Hayır, bu işlevler hesap kaldıracı kullanır.

Lütfen söyleyin bana, belirli bir anda bu enstrümanın kaldıracı hesap kaldıracından farklıysa, ayrı bir enstrüman için gerçek marj miktarını elde etmek için hangi fonksiyon kullanılabilir?

 
Janis Ozols :

Lütfen söyleyin bana, belirli bir anda bu enstrümanın kaldıracı hesap kaldıracından farklıysa, belirli bir enstrüman için gerçek marjı elde etmek için hangi işlev kullanılabilir?

Uzun zamandır böyle olurdu
 
Janis Ozols :

Lütfen söyleyin bana, belirli bir anda bu enstrümanın kaldıracı hesap kaldıracından farklıysa, belirli bir enstrüman için gerçek marjı elde etmek için hangi işlev kullanılabilir?

Belki SymbolInfoDouble(Sembol, SYMBOL_MARGIN_INITIAL/SYMBOL_MARGIN_MAINTENANCE )?

SymbolInfoDouble - Market Info - MQL4 Reference
SymbolInfoDouble - Market Info - MQL4 Reference
  • docs.mql4.com
2. Returns true or false depending on whether a function is successfully performed. In case of success, the value of the property is placed into a recipient variable, passed by reference by the last parameter. It is recommended to use SymbolInfoTick() if the function is used for getting information about the last tick. It may well be that not a...
 
Stanislav Korotky :

Belki SymbolInfoDouble(Sembol, SYMBOL_MARGIN_INITIAL/SYMBOL_MARGIN_MAINTENANCE )?

Ne yazık ki, FOREX piyasa araçlarıyla çalışırken SymbolInfoDouble işlevi bu sabitlerden herhangi biriyle sıfır döndürür.

 

şimdi konu sorusunu cevaplayabilirsiniz

Doğrudan fiyat teklifi için marj formülü

M=SS/KP

  • M marj olduğunda,
  • CC - işlem tutarı,
  • KP - kaldıraç.

Örneğin, USD/CAD döviz çiftinde 1:200 kaldıraçla 1 standart lot (100.000 birim) alım satım yapmak için bir marj yatırmanız gerekir:

  • M=SS/KP
  • M=100 000/200
  • M=500

Yani, marj tutarı 500 $ olacaktır. Ve 1:500 kaldıraç ile marj sadece 100.000/500=200 $ olacaktır. Ancak 1:500'lük bir CP ile, 1 milyon dolarlık 10 lot satın alabilir ve 100.000$/500=2.000$'lık bir marjla işlem yapabilirsiniz.

Ters Teklif için Marj Hesaplaması

M=SS/KP x KV

  • M marj olduğunda;
  • CC - işlem tutarı;
  • KP - kaldıraç;
  • KV - döviz kuru .

Örnek olarak GBR/USD'yi alalım.

  • M \u003d SS / KP x KV
  • M = 100.000/200 x 1, 5074
  • M = 753.7 $

Yuvarlak toplamlar elde edilmez, ancak bir puanın maliyeti her zaman yuvarlak sayılarla ifade edilecektir. Ve doğrudan alıntılar için, bir pip hesaplaması biraz zahmetlidir.

Çapraz Faiz Marjı Hesaplaması

M = SS / KP x KV

  • M - kenar boşluğu;
  • CC - işlem tutarı;
  • KP - kaldıraç;
  • KV - dolar karşısında döviz kuru (taban).

misal:


//+-------------- РАСЧЕТ МАРЖИ ---------------------+
double calcMGN(string SYMB, double VOL)
{
   double Res=0,Price=0;
   if(LEVERAGE!=0)
   {
      if(StringSubstr(SYMB,0,3)!="USD")
      {
         SYMB=StringSubstr(SYMB,0,3)+"USD";
         Price=iClose(SYMB,Period(),0);
         Res=VOL*Price/LEVERAGE;
      }
      else Res=VOL/LEVERAGE;
   }
   return(Res);
}


 
Janis Ozols :

Lütfen söyleyin bana, belirli bir anda bu enstrümanın kaldıracı hesap kaldıracından farklıysa, ayrı bir enstrüman için gerçek marj miktarını elde etmek için hangi fonksiyon kullanılabilir?

formüller bulunabilir. Ama neden?

Enstrümandaki tüm pozisyonlar için gerçek marjı alın ve gerçek kaldıracın ne olduğunu hesaplayın.

 
Andrey Khatimlianskii :

formüller bulunabilir. Ama neden?

Enstrümandaki tüm pozisyonlar için gerçek marjı alın ve gerçek kaldıracın ne olduğunu hesaplayın.

başarısız

omuz yüzer

Onun tarif ettiği gibi koştum,

yeterince yüksek risklerde gerçekten üzücü

 
Renat Akhtyamov :

şimdi konu sorusunu cevaplayabilirsiniz

Kusura bakmayın konu başlığındaki soruyu yanlış anlamışım. Aslında, marjın nasıl hesaplanacağıyla değil, gerçek (hesaplanmayan) değerinin terminalden nasıl alınacağıyla ilgileniyorum. Ve bir bütün olarak hesap için değil, tek bir pozisyon için. İlk yazı bununla ilgili. Bunu MQL4 araçlarını kullanarak yapmanın imkansız olduğunu zaten anladım, böyle bir işlev yok. Ancak, çok uzun zaman önce, @Andrey Khatimlianskii kaldıracın tek bir pozisyon için değil, bir bütün olarak enstrüman için değişebileceğini öne sürdü. Ve şimdi, hesap kaldıracından farklıysa, bu kaldıracın değerini nasıl elde edeceğimi bulmak benim için önemli.


Renat Akhtyamov :

Doğrudan alıntı için marj formülü

M=SS/KP

  • M marj olduğunda,
  • CC - işlem tutarı,
  • KP - kaldıraç.

Bununla ve sonraki tüm formüllerle ilgili sorun, CP (kaldıraç) içermeleridir. Ne yazık ki, tek bir araç için bu değeri nasıl elde edeceğimi henüz çözemedim. AccountMargin() ve AccountInfoInteger(ACCOUNT_LEVERAGE) işlevleri, sembolü değil, hesap kaldıracını döndürür ve MarketInfo(_Symbol,MODE_MARGINREQUIRED) işlevi, bu sembol üzerindeki pozisyonlar gerçekten tamamen açılmış olsa bile, hesap kaldıracına karşılık gelen marj değerini döndürür. farklı kaldıraç. SYMBOL_MARGIN_INITIAL veya SYMBOL_MARGIN_MAINTENANCE sabitlerine sahip SymbolInfoDouble işlevi, FOREX piyasa araçları üzerinde çalışırken her zaman sıfır döndürür.

Bu nedenle, bir aracının tek bir araç için bir bütün olarak hesabın CP'sinden farklı bir kaldıraç ayarlaması durumunda bunun ve sonraki tüm formüllerin nasıl kullanılabileceğini anlamıyorum.


Andrey Khatimliansky :

formüller bulunabilir. Ama neden?

Formül değil (bunlardan yeterince var), bir MQL4 işlevi bulmaya çalışıyorum. Hesaplanan değeri değil, gerçek olanı elde etmek için. Senin sayende Andrey, bunu tek bir pozisyon için yapmanın imkansız olduğunu zaten anladım. Şimdi, hesabın kaldıracından farklıysa, enstrümanın bir bütün olarak kaldıracını nasıl elde edeceğimi merak ediyorum.


Andrey Khatimliansky :

Enstrümandaki tüm pozisyonlar için gerçek marjı alın ve gerçek kaldıracın ne olduğunu hesaplayın.

Şimdi tam olarak bunu yaptım. EA, gerçek marj değerini hesaplanan ile karşılaştırır ve önemli bir fazlalık olması durumunda ticareti durdurur ve tüccara bir bildirim gönderir. Şu ana kadar böyle bir bildirim gelmedi (uh*3).

Ama ya diğer enstrümanlarda pozisyonlar varsa? Ne de olsa, biraz daha yüksek, terminalden tek bir pozisyon için gerçek marj değerini almanın imkansız olduğu ortaya çıktı. Ancak bu, bir bütün olarak enstrüman için kesinlikle yapılabilir mi?

Neden: