Herkese iyi günler. Kayıp durumunda lotun depozito yüzdesi olarak ayarlanması için Grail makinesine lot büyüklüğü hesaplaması eklemeye çalışıyorum. Yani, stoploss tetiklenirse, belirtilen yüzde depozitodan kaybedilir veya depozito bu yüzde için küçükse, lot komisyoncu için mümkün olan minimum seviyeye ayarlanır ... Bazı sitelerde buldum Bunu yapan ve komut dosyasının kodunu kendime aktaran bir komut dosyasının açıklaması, ancak partinin doğru olmadığı kabul ediliyor. .öyle yaptı. Girdi değişkenlerinde maksimum riskten sorumlu bir değişken bildirildi.
Daha sonra, değişkenleri bildiririm. Hesaptaki ücretsiz fon miktarını depolayan bir değişken. Enstrüman için bir noktanın değişken değeri. Broker'ın minimum lot değişkeni. Aracının maksimum lotunun değerini depolayan bir değişken. Ve parti büyüklüğü adımını saklayan bir değişken.
double Free =AccountFreeMargin(); // ПОЛУЧАЕМ СВОБОДНЫЕ СРЕДССТВА ДЛЯ РАСЧЁТА ОБЪЁМА ЛОТАdouble LotVal =MarketInfo( Symbol (),MODE_TICKVALUE); //СТОИМОСТЬ 1 ПУНКТАdouble Min_Lot =MarketInfo( Symbol (),MODE_MINLOT); // МИНИМАЛЬНЫЙ ЛОТ РАЗРЕШЁННЫЙ БРОКЕРОМdouble Max_Lot =MarketInfo( Symbol (),MODE_MAXLOT); // МАКСИМАЛЬНЫЙ ЛОТ РАЗРЕШЁННЫЙ БРОКЕРОМdouble Step =MarketInfo( Symbol (),MODE_LOTSTEP); // ШАГ ИЗМЕНЕНИЯ РАЗМЕРА ЛОТА
Daha sonra parti hacmi, belirli bir zarar durdurmada belirli bir riskle hesaplanır. Durdurma kaybı atr ile hesaplanır veya puan olarak sabitlenir - bu hesaplama doğru çalışır çünkü sabit bir lot koyarsam her şey açılır ve iyi çalışır. Bir lotun hacmini hesaplama formülü aşağıdaki gibidir.
double lot = MathFloor ((Free*MaxRisk/ 100 )/(sl*LotVal)/Step)*Step; //СТРАШНАЯ ФОРМУЛА РАСЧЁТА ОБЪЁМА ЛОТА, КОТОРУЮ Я СОВСЕМ НЕ ПОНИМАЮ((((if (lot<Min_Lot) lot=Min_Lot; //ЕСЛИ ЛОТ ПОЛУЧИЛСЯ МЕНЬШЕ ЧЕМ МИНИМАЛЬНЫЙ ЛОТ У БРОКЕРА ТО ЛОТ ПРИСВАЕМАЕМ МИНИМАЛЬНЫЙ ЛОТ У БРОКЕРАif (lot>Max_Lot) lot=Max_Lot; //ЕСЛИ ЛОТ ПОЛУЧИЛСЯ БОЛЬШЕ ЧЕМ МАКСИМАЛЬНЫЙ ЛОТ У БРОКЕРА ТО ОЛТ ПРИСВАЕВАЕМ МАКС ЛОТ У БРОКЕРА
Baskı üzerinden tüm hesaplamaları yaptıktan sonra, görmek için partinin değerini gösteriyorum.
Print ( "ЛОТ ДО НОРМАЛИЗАЦИИ= " +lot);
lot= NormalizeDouble (lot, Digits ());
Print ( "ЛОТ ПОСЛЕ НОРМАЛИЗАЦИИ= " +lot);
Информация о счете - Состояние окружения - Константы, перечисления и структуры - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
Herkese iyi günler. Kayıp durumunda lotun depozito yüzdesi olarak ayarlanması için Grail makinesine lot büyüklüğü hesaplaması eklemeye çalışıyorum. Yani, stoploss tetiklenirse, belirtilen yüzde depozitodan kaybedilir veya depozito bu yüzde için küçükse, o zaman lot komisyoncu için mümkün olan minimuma ayarlanır ... Bazı sitelerde buldum Bunu yapan ve komut dosyasının kodunu kendime aktaran bir komut dosyasının açıklaması, ancak partinin doğru olmadığı kabul ediliyor. .öyle yaptı. Girdi değişkenlerinde maksimum riskten sorumlu bir değişken bildirildi.
Daha sonra, değişkenleri bildiririm. Hesaptaki ücretsiz fon miktarını depolayan bir değişken. Enstrüman için bir noktanın değişken değeri. Broker'ın minimum lot değişkeni. Aracının maksimum lotunun değerini depolayan bir değişken. Ve parti büyüklüğü adımını saklayan bir değişken.
Daha sonra parti hacmi, belirli bir zarar durdurmada belirli bir riskle hesaplanır. Durdurma kaybı atr ile hesaplanır veya puan olarak sabitlenir - bu hesaplama doğru çalışır çünkü sabit bir lot koyarsam her şey açılır ve iyi çalışır. Bir lotun hacmini hesaplama formülü aşağıdaki gibidir.
Baskı üzerinden tüm hesaplamaları yaptıktan sonra, görmek için partinin değerini gösteriyorum.
Günlükte görüntülenenler *** tarafından görüntülenebilir
İlk bakışta, işlev normaldir. Sadece formülde, emrin zararı durdur fiyatını değil, emrin açılmasından durma noktasına kadar olan mesafeyi nokta olarak eklemek gerekir.
Ayrıca: Partiyi, Adım - (PARTİ BOYUTU DEĞİŞİM ADIMI) için _Digits değil bir doğrulukla normalize etmek gerekir ve Print'te DoubleToString() yoluyla aynı doğrulukla çıktı almak gerekir, o zaman ne yaptığınızı göreceksiniz. görmek istedi.
İlk bakışta, işlev normaldir. Sadece formülde, emrin zararı durdur fiyatını değil, emrin açılmasından durma noktasına kadar olan mesafeyi nokta olarak eklemek gerekir.
Ayrıca: Partiyi, Adım - (PARTİ BOYUTU DEĞİŞİM ADIMI) için _Digits değil bir doğrulukla normalize etmek gerekir ve Print'te DoubleToString() yoluyla aynı doğrulukla çıktı almak gerekir, o zaman ne yaptığınızı göreceksiniz. görmek istedi.
Matematikte iyi değilim - bir siparişin açılmasından koddaki durma noktasına kadar olan mesafeyi sl yerine nasıl hesaplayabilirim? böyle sonuçlandı
DoubleToString ( "ЛОТ ПОСЛЕ НОРМАЛИЗАЦИИ= " +lot); // ВЫВОД ЗНАЧЕНИЯ ЛОТА
Bunun gibi normalleştirilmiş lot değeri
lot= NormalizeDouble (lot,Step); // НОРМАЛИЗАЦИЯ ЗНАЧЕНИЯ ЛОТА
Koddaki açılıştan durağa kadar olan mesafenin nasıl hesaplanacağını anlamak için kalıyor?
Kod parçası için çok teşekkür ederim, ancak şimdi soru bu kod parçasından hangi tür değişkenlerin bildirileceği ve bunlara hangi değerlerin atanacağıdır? Ben bir sihirbaz değilim, ama sadece öğreniyorum
Kod parçası için çok teşekkür ederim, ancak şimdi soru bu kod parçasından hangi tür değişkenlerin bildirileceği ve bunlara hangi değerlerin atanacağıdır? Ben bir sihirbaz değilim, ama sadece öğreniyorum
MQL5.com web sitesine giriş yapmak için çerezlerin kullanımına izin vermelisiniz.
Lütfen tarayıcınızda gerekli ayarı etkinleştirin, aksi takdirde giriş yapamazsınız.
Hesabınıza giriş yaptınız. İki faktörlü kimlik doğrulama devre dışı bırakıldı. Yeniden kurup yeni bir QR kodu tarayın veya iki faktörlü kimlik doğrulama devre dışıyken devam edin.
Merhaba Burada lider skoru nasıl yapılır?
üst ?
Herkese iyi günler. Kayıp durumunda lotun depozito yüzdesi olarak ayarlanması için Grail makinesine lot büyüklüğü hesaplaması eklemeye çalışıyorum. Yani, stoploss tetiklenirse, belirtilen yüzde depozitodan kaybedilir veya depozito bu yüzde için küçükse, lot komisyoncu için mümkün olan minimum seviyeye ayarlanır ... Bazı sitelerde buldum Bunu yapan ve komut dosyasının kodunu kendime aktaran bir komut dosyasının açıklaması, ancak partinin doğru olmadığı kabul ediliyor. .öyle yaptı. Girdi değişkenlerinde maksimum riskten sorumlu bir değişken bildirildi.
Daha sonra, değişkenleri bildiririm. Hesaptaki ücretsiz fon miktarını depolayan bir değişken. Enstrüman için bir noktanın değişken değeri. Broker'ın minimum lot değişkeni. Aracının maksimum lotunun değerini depolayan bir değişken. Ve parti büyüklüğü adımını saklayan bir değişken.
Daha sonra parti hacmi, belirli bir zarar durdurmada belirli bir riskle hesaplanır. Durdurma kaybı atr ile hesaplanır veya puan olarak sabitlenir - bu hesaplama doğru çalışır çünkü sabit bir lot koyarsam her şey açılır ve iyi çalışır. Bir lotun hacmini hesaplama formülü aşağıdaki gibidir.
Baskı üzerinden tüm hesaplamaları yaptıktan sonra, görmek için partinin değerini gösteriyorum.
Günlüğe kaydedilenler
Herkese iyi günler. Kayıp durumunda lotun depozito yüzdesi olarak ayarlanması için Grail makinesine lot büyüklüğü hesaplaması eklemeye çalışıyorum. Yani, stoploss tetiklenirse, belirtilen yüzde depozitodan kaybedilir veya depozito bu yüzde için küçükse, o zaman lot komisyoncu için mümkün olan minimuma ayarlanır ... Bazı sitelerde buldum Bunu yapan ve komut dosyasının kodunu kendime aktaran bir komut dosyasının açıklaması, ancak partinin doğru olmadığı kabul ediliyor. .öyle yaptı. Girdi değişkenlerinde maksimum riskten sorumlu bir değişken bildirildi.
Daha sonra, değişkenleri bildiririm. Hesaptaki ücretsiz fon miktarını depolayan bir değişken. Enstrüman için bir noktanın değişken değeri. Broker'ın minimum lot değişkeni. Aracının maksimum lotunun değerini depolayan bir değişken. Ve parti büyüklüğü adımını saklayan bir değişken.
Daha sonra parti hacmi, belirli bir zarar durdurmada belirli bir riskle hesaplanır. Durdurma kaybı atr ile hesaplanır veya puan olarak sabitlenir - bu hesaplama doğru çalışır çünkü sabit bir lot koyarsam her şey açılır ve iyi çalışır. Bir lotun hacmini hesaplama formülü aşağıdaki gibidir.
Baskı üzerinden tüm hesaplamaları yaptıktan sonra, görmek için partinin değerini gösteriyorum.
Günlükte görüntülenenler *** tarafından görüntülenebilir
İlk bakışta, işlev normaldir. Sadece formülde, emrin zararı durdur fiyatını değil, emrin açılmasından durma noktasına kadar olan mesafeyi nokta olarak eklemek gerekir.
Ayrıca: Partiyi, Adım - (PARTİ BOYUTU DEĞİŞİM ADIMI) için _Digits değil bir doğrulukla normalize etmek gerekir ve Print'te DoubleToString() yoluyla aynı doğrulukla çıktı almak gerekir, o zaman ne yaptığınızı göreceksiniz. görmek istedi.
Herkese iyi günler. Partinin büyüklüğünü hesaplamak için makineyi Kase'ye vidalamaya çalışıyorum.
bunu kendime yaptım
İlk bakışta, işlev normaldir. Sadece formülde, emrin zararı durdur fiyatını değil, emrin açılmasından durma noktasına kadar olan mesafeyi nokta olarak eklemek gerekir.
Ayrıca: Partiyi, Adım - (PARTİ BOYUTU DEĞİŞİM ADIMI) için _Digits değil bir doğrulukla normalize etmek gerekir ve Print'te DoubleToString() yoluyla aynı doğrulukla çıktı almak gerekir, o zaman ne yaptığınızı göreceksiniz. görmek istedi.
Matematikte iyi değilim - bir siparişin açılmasından koddaki durma noktasına kadar olan mesafeyi sl yerine nasıl hesaplayabilirim? böyle sonuçlandı
Bunun gibi normalleştirilmiş lot değeriKoddaki açılıştan durağa kadar olan mesafenin nasıl hesaplanacağını anlamak için kalıyor?
Koddaki açılıştan durağa kadar olan mesafenin nasıl hesaplanacağını anlamak için kalıyor?
Kod parçası için çok teşekkür ederim, ancak şimdi soru bu kod parçasından hangi tür değişkenlerin bildirileceği ve bunlara hangi değerlerin atanacağıdır? Ben bir sihirbaz değilim, ama sadece öğreniyorum
Kod parçası için çok teşekkür ederim, ancak şimdi soru bu kod parçasından hangi tür değişkenlerin bildirileceği ve bunlara hangi değerlerin atanacağıdır? Ben bir sihirbaz değilim, ama sadece öğreniyorum
açılış fiyatı satın al
zararı durdur fiyatını satın al
yayılmışSelamlar!
biri bana yardım edebilir mi?