MQL5'te Marj Gereksinimlerini Tahmin Etme - sayfa 7

 
Vladimir :

Bunun kodla ilgili olmadığını anlıyorsunuz, burada sayabilenler - bu kadar. Ancak, etkisi gerçekten ortaya çıkan özellikler listesine volatiliteyi de eklediniz. Ormanın ilerisinde, daha fazla yakacak odun. Nasıl dikkate alınır? Durum tamamen umutsuz görünüyor...

ne demek istediğini gerçekten anlamıyorum

Bunların hepsi ticaret koşullarında, gerçek ticaret kurallarında açıklanmıştır.

Esasen yaygın bir olay

Buna göre, hesaplama farklı

Ama sorun çözülebilir.

Nasıl dikkate alınır - önceki gönderi.
 
Renat Akhtyamov :

ne demek istediğini gerçekten anlamıyorum

Bunların hepsi ticaret koşullarında, gerçek ticaret kurallarında açıklanmıştır.

Esasen yaygın bir olay

Buna göre, hesaplama farklı

Ama sorun çözülebilir.

açıklamaya çalışacağım. Algoritma şu şekildedir: birkaç düzine DC'de birkaç düzine sembol izlenir. Bazı adımlarla, tahminler yapılır, basitlik için onlara, alınan marjdaki işlemin beklenen karlılığı diyeceğim. Her çift için farklıdır (sembol, DC). Sadece işlemin açılması sırasında değil. Anlaşma açacağımız sembolü ve DC'yi seçmek için bu göstergeyi karşılaştırmamız gerekiyor. Bu seçim, kaldıracın, işlemin kapanmasından önceki beklenen dönemde hangi limitlerde olacağının bir değerlendirmesini gerektirir. Sonuçta, bu miktarı rezerve etmeniz gerekecek.

Bu maksimum programdır. Şimdiye kadar, gerekli marjın OrderCalcMargin() tahminini temel almanın mümkün olup olmadığını bile bilmiyorum. Bu, şu an için sadece bir marj olsun. Oynaklık değiştikçe kaldıraç değişir demiştiniz. Bu, istatistikleri toplamamız gerektiği anlamına gelir - her bir sembol için DC'lerin her birinde hangi aralıklarda değişir. Veya bu dalgalanmaların kabul edilebilir aralıklarını bulmak mümkün olacaktır. En kötüsü, omzun öngörülemeyen bir şekilde değiştiği ortaya çıkarsa ...

" OrderCheck() veya OrderCalcMargin() işlevlerinin spesifikasyonda belirtilen kaldıraç özelliklerini dikkate alıp almadığı" sorum bu yaklaşımdaki ilk sorudur.
 
Vladimir :

açıklamaya çalışacağım. Algoritma şu şekildedir: birkaç düzine DC'de birkaç düzine sembol izlenir. Bazı adımlarla, tahminler yapılır, basitlik için onlara, alınan marjdaki işlemin beklenen karlılığı diyeceğim. Her çift için farklıdır (sembol, DC). Sadece işlemin açılması sırasında değil. Anlaşma açacağımız sembolü ve DC'yi seçmek için bu göstergeyi karşılaştırmamız gerekiyor. Bu seçim, kaldıracın, işlemin kapanmasından önceki beklenen dönemde hangi limitlerde olacağının bir değerlendirmesini gerektirir. Sonuçta, bu miktarı rezerve etmeniz gerekecek.

Bu maksimum programdır. Şimdiye kadar, gerekli marjın OrderCalcMargin() tahminini temel olarak kullanmanın mümkün olup olmadığını bile bilmiyorum. Bu, şu an için sadece bir marj olsun. Oynaklık değiştikçe kaldıraç değişir demiştiniz. Bu, istatistikleri toplamamız gerektiği anlamına gelir - her bir sembol için DC'lerin her birinde hangi aralıklarda değişir. Veya bu dalgalanmaların kabul edilebilir aralıklarını bulmak mümkün olacaktır. En kötüsü, omzun tahmin edilemez bir şekilde değiştiği ortaya çıkarsa ...

Son kez yazıyorum:

belirli bir DC'nin ticaret koşullarını okuyun ve herhangi bir istatistiğe ihtiyacınız olmayacak.

 
Renat Akhtyamov :

Son kez yazıyorum:

belirli bir DC'nin ticaret koşullarını okuyun ve herhangi bir istatistiğe ihtiyacınız olmayacak.

//Benim sorum "OrderCheck() veya OrderCalcMargin() işlevleri, spesifikasyonda belirtilen kaldıracın özelliklerini dikkate alıyor mu" - bu yaklaşımdaki ilk soru.

akım

Kaldıraçta bir düşüş bildirimi ile postaya ne zaman bir mektup geldiğini hiç görmediniz ve birçok faktör olabilir, bu sadece ülkelerdeki seçimler için değil. Böylece mektup gelmeyebilir - omuz kendi takdirine bağlı olarak anında değiştirilir, 20'yi 100'den ve sadece birkaç saatliğine ayarlayabilirler.

 
Vitaly Muzichenko :

Kaldıraçta bir düşüş bildirimi ile postaya ne zaman bir mektup geldiğini hiç görmediniz ve birçok faktör olabilir, bu sadece ülkelerdeki seçimler için değil. Böylece mektup gelmeyebilir - omuz kendi takdirine bağlı olarak anında değiştirilir, 20'yi 100'den ve sadece birkaç saatliğine ayarlayabilirler.

Vitaliy, izleme algoritmasını bir öncekine zaten yazdım, kendim kullandım çünkü kaldıraç 1:2000 idi.

Alım satım koşullarında, kaldıraç değişiminin sınırlarını, koşulları, zamanı, hangi koşullarda hiç değişmediklerini vb.

Onlar da anında değişiyor, bu yüzden takip ettim

 
Vladimir : .
"OrderCheck() veya OrderCalcMargin() işlevlerinin spesifikasyonda belirtilen kaldıraç özelliklerini dikkate alıp almadığı" sorum bu yaklaşımdaki ilk sorudur.

Üzgünüm, sözlerinle:

"Bu kodla ilgili değil, burada saymayı bilenler - hepsi bu"

Büyük olasılıkla siz ve kendiniz herkese atfettiniz.

Say ve her şey olacak
 

Ya da belki terminalde gerekli bilgi yoktur?
Terminalin sunucuya her istek gönderdiğinde veya fonların yeterliliğini kontrol edip etmediğini kontrol etmeye başladım. MT5'teki birkaç DC'den, fon eksikliği durumunda, zaman içinde iki noktayı gösteren istekleri iki satırda günlüğe kaydeden yalnızca birini buldum. Belki MT5'ten bu terminal gerçek bir hesaba bağlı olduğundan, MT5'in geri kalanında bir demo var. Bir ticaret açmak için 6 manuel deneme için oturum açın:

2018.07.03 04:59:35.231 İşlemler '3038119': piyasa alış 1.26 EURUSD.m
2018.07.03 04:59:35.331 '3038119' ticareti: başarısız piyasa alımı 1.26 EURUSD.m [Para yok]
2018.07.03 05:00:51.667 İşlemler '3038119': piyasa alış 1.26 EURUSD.m
2018.07.03 05:00:51.747 İşlemler '3038119': başarısız piyasa alımı 1.26 EURUSD.m [Para yok]
2018.07.03 05:00:55.001 İşlemler '3038119': piyasa alış 1.26 EURUSD.m
2018.07.03 05:00:55.091 İşlemler '3038119': başarısız piyasa alımı 1.26 EURUSD.m [Para yok]
2018.07.03 05:01:000.008 İşlemler '3038119': piyasa satışı 1.26 EURUSD.m
2018.07.03 05:01:000.091 İşlemler '3038119': başarısız piyasa satışı 1.26 EURUSD.m [Para yok]
2018.07.03 05:01:02.911 İşlemler '3038119': piyasa satışı 1.26 EURUSD.m
2018.07.03 05:01:03.007 İşlemler '3038119': başarısız piyasa satışı 1.26 EURUSD.m [Para yok]
2018.07.03 05:01:05.952 İşlemler '3038119': piyasa satışı 1.26 EURUSD.m
2018.07.03 05:01:06.035 İşlemler '3038119': başarısız piyasa satışı 1.26 EURUSD.m [Para yok]

İsteğin alındığı satır ile Para yok yanıtının olduğu satır arasındaki zaman aralıkları, sunucu şunları gösterdi (milisaniye olarak): 100 80 90 83 96 87.
Aynı zamanda terminalde sunucuya gösterilen ping 73.56 ms'dir. Terminal, yeterli fon olmadığına karar vermeden önce neden 80ms veya daha fazla beklesin? Fonların yeterliliğini kontrol etmeden tüm istekleri sunucuya göndermesi çok muhtemeldir. Niye ya? Doğal bir sebep görüyorum - terminal bu kontrol için gerekli bilgileri içermiyor.
Ve her zaman "Yeterli para yok ..." mesajının terminalin kendisine verdiğinden, bunun sadece sunucu kararlarının bir aktarımı olmadığından emindim.

Dennis Kirichenko sorumu en doğru şekilde yanıtlamış görünüyor https://www.mql5.com/ru/forum/261955/page4#comment_7949343

Renat Akhtyamov , https://www.mql5.com/ru/forum/261955/page2#comment_7945930 "Sunucudan marj bilgisi iste" de nasıl bir yöntem önerdiniz ? Bir saniye bile sürsün, tamam, ama sunucuya ne isteğini demek istediniz? Bu gerçekten sadece bir ön marj tahmininin yapıldığı önerilen bir ticareti açma girişimi mi?

 
Vladimir :

Ya da belki terminalde gerekli bilgi yoktur?
Terminalin sunucuya her istek gönderdiğinde veya fonların yeterliliğini kontrol edip etmediğini kontrol etmeye başladım. MT5'teki birkaç DC'den, fon eksikliği durumunda, zaman içinde iki noktayı gösteren istekleri iki satırda günlüğe kaydeden yalnızca birini buldum. Belki MT5'ten bu terminal gerçek bir hesaba bağlı olduğundan, MT5'in geri kalanında bir demo var. Bir ticaret açmak için 6 manuel deneme için oturum açın:

2018.07.03 04:59:35.231 İşlemler '3038119': piyasa alış 1.26 EURUSD.m
2018.07.03 04:59:35.331 '3038119' ticareti: başarısız piyasa alımı 1.26 EURUSD.m [Para yok]
2018.07.03 05:00:51.667 İşlemler '3038119': piyasa alış 1.26 EURUSD.m
2018.07.03 05:00:51.747 İşlemler '3038119': başarısız piyasa alımı 1.26 EURUSD.m [Para yok]
2018.07.03 05:00:55.001 İşlemler '3038119': piyasa alış 1.26 EURUSD.m
2018.07.03 05:00:55.091 İşlemler '3038119': başarısız piyasa alımı 1.26 EURUSD.m [Para yok]
2018.07.03 05:01:000.008 İşlemler '3038119': piyasa satışı 1.26 EURUSD.m
2018.07.03 05:01:000.091 İşlemler '3038119': başarısız piyasa satışı 1.26 EURUSD.m [Para yok]
2018.07.03 05:01:02.911 İşlemler '3038119': piyasa satışı 1.26 EURUSD.m
2018.07.03 05:01:03.007 İşlemler '3038119': başarısız piyasa satışı 1.26 EURUSD.m [Para yok]
2018.07.03 05:01:05.952 İşlemler '3038119': piyasa satışı 1.26 EURUSD.m
2018.07.03 05:01:06.035 İşlemler '3038119': başarısız piyasa satışı 1.26 EURUSD.m [Para yok]

İsteğin alındığı satır ile Para yok yanıtının olduğu satır arasındaki zaman aralıkları, sunucu şunları gösterdi (milisaniye olarak): 100 80 90 83 96 87.
Aynı zamanda terminalde sunucuya gösterilen ping 73.56 ms'dir. Yeterli fon olmadığına karar vermeden önce terminalin neden 80ms veya daha fazla beklemesi gerekiyor? Fonların yeterliliğini kontrol etmeden tüm istekleri sunucuya göndermesi çok muhtemeldir. Niye ya? Doğal bir sebep görüyorum - terminal bu kontrol için gerekli bilgileri içermiyor.
Ve her zaman "Yeterli para yok ..." mesajının terminalin kendisine verdiğinden, bunun sadece sunucu kararlarının bir aktarımı olmadığından emindim.

Dennis Kirichenko sorumu en doğru şekilde yanıtlamış görünüyor https://www.mql5.com/ru/forum/261955/page4#comment_7949343

Renat Akhtyamov , https://www.mql5.com/ru/forum/261955/page2#comment_7945930 "Sunucudan marj bilgisi iste" de nasıl bir yöntem önerdiniz ? Bir saniye bile sürsün, tamam, ama sunucuya ne isteğini demek istediniz? Bu gerçekten sadece bir ön marj tahmininin yapıldığı önerilen bir ticareti açma girişimi mi?

tabii ki seni anlıyorum

Yolculuğun başında, ilk kez basit şeyleri anlamadım

Bir kez daha, işte 1 lotluk satış marjı

OrderCalcMargin( ORDER_TYPE_SELL ,_Symbol,1,BID,Mgn)

ama satın almak için

OrderCalcMargin(ORDER_TYPE_BUY,_Symbol,1,ASK,Mgn)

Kaldıraç bunun bir katsayısıdır, artık yok

k=100/omuz

aşağı yukarı böyle

Ve derginiz size diyor ki - para yok, bedava açamam

Demo para ile sipariş açabilirsiniz. Ancak anladığım kadarıyla demo paranız yok.

Bakiye sıfır, değil mi?
 
Beyler, sembolün kaldıracının veya genel olarak hesap kaldıracının sıklıkla değiştiği DC'nin adresini verin. Veya en azından bazı semboller için ayrı kaldıraç koşulları.
 

ForexClub .

::OrderCalcMargin() kullanarak marjlarını böyle bir lot boyutuna göre kontrol ettim. Gerçek hesap, kaldıraç 1:500.

EURUSD çok güzelsin fiyat Hacim değeri, $ marj, $ teorik kaldıraç
100.000 1.00 1.16716 116 716 233.43 500

11.00 1.16716 1 283 876 2 567,75 500

51.00 1.16716 5 952 516 11 905.03 500

101.00
1.16716 11 788 316 23 576.63 500


Kaldıracın, Spesifikasyona karşılık gelmeyen işlem hacminin büyümesiyle değişmediği ortaya çıktı.