- Баланс счета * процент = RISK = (OrderOpenPrice - OrderStopLoss)*DIR * OrderLots * DeltaPerlot (Примечание OOP-OSL включает SPREAD).
- НЕ используйте TickValue само по себе - DeltaPerlot
- Вы также должны проверить FreeMargin, чтобы избежать стоп-аута
double Spread=MarketInfo(Symbol(),MODE_SPREAD)/Q; double Risk=(RiskPercent*AccountEquity())/100;//this means if your balance 1000$ & RiskPercent=10% >> you going to risk 100$ double lot=Risk/((StopLoss+Spread)*MarketInfo(Symbol(),MODE_TICKVALUE)*Q);//Make Sure to Define Your StopLoss & Q=10 in 5 digits or Q=1 in 4 Digits
Извините, это не очень хорошо
- Баланс счета * процент = RISK = (OrderOpenPrice - OrderStopLoss)*DIR * OrderLots * DeltaPerlot (Примечание OOP-OSL включает SPREAD).
- НЕ используйте TickValue само по себе - DeltaPerlot
- Вы также должны проверить FreeMargin, чтобы избежать стоп-аута.
Хорошо, я понял вашу мысль, поэтому вот моя логика и расчеты, как я рассчитываю RISK %
Что в коде MQL4 выглядит следующим образом:
extern double MYSTOPLOSS = 50; // CUSTOM SL SIZE IN PIPS AFTER THE STOPLEVEL extern double RISK =2; // 2% ACCOUNT RISK double LOT =(AccountEquity()*RISK)/(100*(MarketInfo(Symbol(),MODE_STOPLEVEL)+MYSTOPLOSS)* Point *100000 );
Простой 1 лайнер, ничего сложного, теперь, пожалуйста, помогите мне вставить тот DELTA материал, о котором вы говорили, я знаю, что формула не полная, поэтому, пожалуйста, помогите мне.И, пожалуйста, обратите внимание, что мой счет в евро, поэтому в большинстве случаев это основная валюта.
- Теперь, пожалуйста, помогите мне вставить этот материал DELTAВы потрудились нажать на предоставленные ссылки?
- Теперь, пожалуйста, помогите мне вставить эту DELTAВы потрудились нажать на предоставленные ссылки?
Да, но я не понимаю, как вы вставляете это в мое уравнение, вы же сказали, что вам это нужно:
MarketInfo(pair, MODE_TICKVALUE) / MarketInfo(pair, MODE_TICKSIZE)Но я не понимаю, как это поможет моему уравнению, потому что деление этих двух чисел даст большое число вместо размера тика...
Да, но я не понимаю, как вы вписали это в мое уравнение, вы же сказали, что вам нужно это:
Но я не понимаю, как это поможет моему уравнению, потому что деление этих двух чисел даст большое число вместо размера тика...Попробуйте эту ссылку: https://www.mql5.com/en/forum/148224.
Возможно, если посмотреть на это под другим углом, это поможет.
Попробуйте воспользоваться этой ссылкой: https://www.mql5.com/en/forum/148224.
Возможно, если посмотреть на это под другим углом, это поможет.
WTF, ребята, разве это не должно быть TICKVALUE * TICKSIZE вместо TICKVALUE /TICKSIZE? Я думаю, там большая ошибка.
Только что сделал быстрый индикатор, который показывает отдельные значения, я думаю, что TICKVALUE * TICKSIZE является подходящим...
И обратите внимание, что демо-счет в EUR, так что это базовая валюта, в то время как я сделал тот же тест с USD-счетом и там POINT был эквивалентен TICKVALUE * TICKSIZE, потому что он измеряет значение валюты котировки.
Если я правильно понял вопрос, это сделает за вас всю работу.
for( i=0; i<=ot; i++ ) for( z=0; z<=10; z++ ) { if( long_orders_array_ATF[i][z] > 0 ) for (zz=0; zz<=10; zz++) { OrderSelect(zz,SELECT_BY_POS,MODE_TRADES); if (OrderTicket()==long_orders_array_ATF[i][z]) zz=ot+2; if (ot+2<=zz) long_potencial_loss = (OrderLots() * (OrderOpenPrice() - OrderStopLoss()))*100000; long_sum_potencial_loss = long_sum_potencial_loss + long_potencial_loss; } } ... lot_size = ((((free-long_sum_potencial_loss) * percent_depo)/100.0)/pips)/100000 ; }
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Здравствуйте, мне нужен код/формула, которая изменяет размер лота на основе % риска счета, рассчитанного с учетом STOPLOSS, и принимая во внимание, что мой счет в EUR.
То, что у меня есть, это вот это:
Но эта формула не учитывает стоплосс.
Поэтому я нашел этот в поиске Google
И вот это
Но ничего из этого не работает, пожалуйста, помогите мне исправить это или дайте мне лучший вариант, спасибо!