Отключение АТ

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Almamojet
126
Almamojet  

Здравствуйте, как дописать функцию, чтоб при достижении просадки откл-сь АТ.

Он отключает ее на обум, но не от просадки

if(TerminalInfoInteger(TERMINAL_TRADE_ALLOWED)==0 && DoubleToString(AccountProfit()*100*(-100)/ACCOUNT_BALANCE,2)>Prosadka) Autotrade();
if(TerminalInfoInteger(TERMINAL_TRADE_ALLOWED)==1 && DoubleToString(AccountProfit()*100*(-100)/ACCOUNT_BALANCE,2)>Prosadka) Autotrade();
  
Anatolii Zainchkovskii
1761
Anatolii Zainchkovskii  
Almamojet:

Здравствуйте, как дописать функцию, чтоб при достижении просадки откл-сь АТ.

Он отключает ее на обум, но не от просадки

может знак стоит поставить меньше?  ты же не по модулю значения сравниваешь, и -100<-80 . так что поставь знак меньше и проверь.

Alexey Viktorov
26099
Alexey Viktorov  

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Отключение АТ

Almamojet, 2019.05.01 08:53

Здравствуйте, как дописать функцию, чтоб при достижении просадки откл-сь АТ.

Он отключает ее на обум, но не от просадки

if(TerminalInfoInteger(TERMINAL_TRADE_ALLOWED)==0 && DoubleToString(AccountProfit()*100*(-100)/ACCOUNT_BALANCE,2)>Prosadka) Autotrade();
if(TerminalInfoInteger(TERMINAL_TRADE_ALLOWED)==1 && DoubleToString(AccountProfit()*100*(-100)/ACCOUNT_BALANCE,2)>Prosadka) Autotrade();
  
А с какой целью вставлено преобразование в строку?
Sergey Nikolenko
132
Sergey Nikolenko  

Так 

if(TerminalInfoInteger(TERMINAL_TRADE_ALLOWED)==0 && NormalizeDouble(AccountProfit()*100*(-100)/ACCOUNT_BALANCE,2)>Prosadka) Autotrade();
if(TerminalInfoInteger(TERMINAL_TRADE_ALLOWED)==1 && NormalizeDouble(AccountProfit()*100*(-100)/ACCOUNT_BALANCE,2)>Prosadka) Autotrade();

или так

if(TerminalInfoInteger(TERMINAL_TRADE_ALLOWED)==0 && AccountProfit()*100*(-100)/ACCOUNT_BALANCE>Prosadka) Autotrade();
if(TerminalInfoInteger(TERMINAL_TRADE_ALLOWED)==1 && AccountProfit()*100*(-100)/ACCOUNT_BALANCE>Prosadka) Autotrade();
Vasiliy Pushkaryov
6971
Vasiliy Pushkaryov  
Almamojet:

Здравствуйте, как дописать функцию, чтоб при достижении просадки откл-сь АТ.

Он отключает ее на обум, но не от просадки

AccountProfit()*100*(-100)/ACCOUNT_BALANCE

Если скобки раскрыть, то что дает умножение плавающей прибыли на -10 000 ?

Dmitiry Ananiev
9283
Dmitiry Ananiev  
Надо сохранять баланс так что в случае прироста сохранять новое значение а в случае просадки не менять и сравнивать с текущим балансом или средствами. Или по другому перебирать сделки в истории от последней к первой и смотреть изменение баланса. и сравнивать с текущим.
lkd4d5ti
54
lkd4d5ti  
Almamojet:

Здравствуйте, как дописать функцию, чтоб при достижении просадки откл-сь АТ.

Он отключает ее на обум, но не от просадки

Приветствую тоже искал такой код
Смог решить проблему ?

кодом не поделишься ?

Олег avtomat
8890
Олег avtomat  
         if( Dopusk > Prosadka )  CheckForOpen();

Если просадка меньше заданного допуска, то будет работать.

Если просадка больше заданного допуска, то не будет работать.

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий