Daha net hale geldi, sadece alım ve satım fiyatlarına ne kadar değer verdiğimi anlamak için kaldı. Koduma göre bir sipariş açmak şöyle oluyor.
OrderSend ( Symbol (),OP_BUY,lot,Ask,slippages,Bid-sl,Bid+tp , "ДИВЕРГЕНЦИЯ НА БАЙ АО" ); // ОТКРЫВАЕМ БАЙ ОРДЕРOrderSend ( Symbol (),OP_SELL,lot,Bid,slippages,Ask+sl,Ask-tp , "ДИВЕРГЕНЦИЯ НА СЕЛ АО" ); // ОТКРКЫВВАЕМ СЕЛ ОРДЕР
Tobish değişkenlerine Ask atadığım alıcının açılış fiyatı, değişkene ise Teklif atadığım satışların açılış fiyatı?
ATR göstergesinde hesaplanan bir stop koyduğunuzu düşünürsek, bu yeterlidir.
Ve bu normalleştirilmiş parti büyüklüğü olacaktır.
Kodu önerildiği gibi yaptım. İlk olarak, koda göre, durma türünü seçmek için bir şartım var - atr veya sabit
if (tip_sl==en_po_atr)
{ //ЕСЛИ ТИП СТОП ЛОССА СТОИТ ПО АТР ТО ВЫСЧИТЫВАЕМ ЕГО ИЗ АТР//Print("СТОП ПО АТР, ЕГО РАЗМЕР ");
sl= iATR ( NULL ,PeriodForWork_sl,atr_sl_period, 1 ); // ПОЛУЧЕНИЕ ЗНАЧЕНИЙ АТР ДЛЯ ВЫСТАВЛЕНИЯ СТОПЛОССАPrint ( "СТОП ПО АТР, ЕГО РАЗМЕР " +sl);
}
else//ИНАЧЕ- ТО ЕСТЬ ЕСЛИ СТОП ЛОСС ФИКСИРОВАННЫЙ В ПУНКТАХ
{
Print ( "СТОП ЛОС ФИКСИРОВАННЫЙ В ПУНКТАХ" );
sl= razmer_fikc_sl* Point ; // ПЕЕРМЕННОЙ СТОП ЛОССА ПРИСВАЕВАЕМ ФИКСИРОВАНОНЕ ЗНАЧЕНИЕ ПУНКТОВ И ДОМНОЖАЕМ НА ПОИНТ
}
Sonra normalleştirmemi yorumladım ve bu şekilde atadım.
sl = fabs (OrderOpenPrice()-OrderStopLoss())/ _Point ; // ПРИСВОИЛ ЗНАЧЕНИЕ КАК СОВЕТОВАЛИ//sl= NormalizeDouble(sl,Digits());// НОРМАЛИЗАЦИЯ ЗНАЧЕНИЯ СТОП ЛОССА ДЛЯ ОТКРЫТИЯ СДЕЛКИ ТО ЧТО БЫЛО ЗАКОМЕНТИРОВАЛ
Kodun devamında, bir kar hesaplamam var - orada sorun yoktu ve karı hesapladıktan sonra tavsiye edilen korkunç bir formül ekledim
double lot = MathFloor ((Free*MaxRisk/ 100 )/(sl/ Point *LotVal)/Step)*Step; //СТРАШНАЯ ФОРМУЛА РАСЧЁТА ОБЪЁМА ЛОТА КОТОРУЮ МНЕ СОВЕТОВАЛИ
Her şey hatasız derlendi. Ve test başlatıldığında, anladığım kadarıyla sıfıra bölmenin gerçekleştiği günlükte bir hata oluşuyor ve test duruyor. Nerede hata yaptım veya neyi doğru yapmadım?
Üzgünüm, burada sohbete daldım, fark etmedim ...
Konu genel ve kodlarınız her zaman ilgi çekici...
çok benimsendi)
ukraynaca teknik zavdannya daha iyi anlıyor
Henüz bu seviyeye sahip değilim, ana dilim Rusça :)
...aynı zeka seviyesinde biraHenüz bu seviyeye sahip değilim, ana dilim Rusça :)
Ben SSCB'denim... İki ana dilim var)
Ben SSCB'denim... İki ana dilim var)
ve bizde üç tane var, surzhik hala
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?
Açık fiyat ile stop fiyatı arasındaki farkın mutlak değerini fiyat adımına bölün.
ve bu sl değeri formüle girecektir.
ATR göstergesinde hesaplanan bir stop koyduğunuzu düşünürsek, bu yeterlidir.
Ve bu normalleştirilmiş parti büyüklüğü olacaktır.açılış fiyatı satın al
zarar durdur fiyatını satın al
yayılmış
Daha net hale geldi, sadece alım ve satım fiyatlarına ne kadar değer verdiğimi anlamak için kaldı. Koduma göre bir sipariş açmak şöyle oluyor.
Tobish değişkenlerine Ask atadığım alıcının açılış fiyatı, değişkene ise Teklif atadığım satışların açılış fiyatı?
Daha net hale geldi, sadece alım ve satım fiyatlarına ne kadar değer verdiğimi anlamak için kaldı. Koduma göre bir sipariş açmak şöyle oluyor.
Tobish değişkenlerine Ask atadığım alıcının açılış fiyatı, değişkene ise Teklif atadığım satışların açılış fiyatı?
Bu fonksiyona bakılırsa, stoploss'u zaten biliyorsunuz... Sorunun ne olduğunu anlamadım
Açık fiyat ile stop fiyatı arasındaki farkın mutlak değerini fiyat adımına bölün.
ve bu sl değeri formüle girecektir.
ATR göstergesinde hesaplanan bir stop koyduğunuzu düşünürsek, bu yeterlidir.
Ve bu normalleştirilmiş parti büyüklüğü olacaktır.Kodu önerildiği gibi yaptım. İlk olarak, koda göre, durma türünü seçmek için bir şartım var - atr veya sabit
Sonra normalleştirmemi yorumladım ve bu şekilde atadım.
Kodun devamında, bir kar hesaplamam var - orada sorun yoktu ve karı hesapladıktan sonra tavsiye edilen korkunç bir formül ekledim
Her şey hatasız derlendi. Ve test başlatıldığında, anladığım kadarıyla sıfıra bölmenin gerçekleştiği günlükte bir hata oluşuyor ve test duruyor. Nerede hata yaptım veya neyi doğru yapmadım?