Стратегии и роботы > Помогите доделать балансировщик

Обсуждение, описание стратегий и роботов, идеи для стратегий
Sargon
Сообщения: 8
Зарегистрирован: 27 ноя 2025, 11:50

Помогите доделать балансировщик

Непрочитанное сообщение Sargon » Вчера, 08:15

Идея робота проста. Необходимо на высвободившиеся средства в конце дня докупить AKMM Денежный поток, пока стратегия простаивает получать хоть копейку с простоя. И на оборот если понадобились средства распродавать по мере необходимости.
Счет на строен на маржинальную торговлю с лимитом до 5000 р что бы не платить за нее.
устанавливаем робота на АКММ с 1 минутой таймфрейм

Код: Выделить всё

 
 //Получаем баланс средств например 4624 р
 var currentMoney = GetCurrentBalance(RazdelGroupType.MICEX).Money;
 //Пишем сообщение для отладки какой баланс денежных средств к нам приходит сообщение Деньги: 4624
 ShowMessage(" Деньги: " +  currentMoney );
    /// ПРАВИЛО 1 Если необходимо ресурс распродаем заначку
   if ((BarTime() > AsTime(8, 0, 0))&&((BarTime() < AsTime(24, 0, 0)))&&((double)currentMoney < 0))
   { //пока не проверял
   CloseLong(MinLot);
   }
   /// ПРАВИЛО 2 Докладываем заначку
   if ((BarTime() > AsTime(18, 0, 0))&&((BarTime() < AsTime(24, 0, 0)))&&((double)currentMoney > GetAsk() ))
   {
   //Проблема №1 в  AsTime(18, 0, 0) в место 18 ставим внешнею переменную, пишет что метод перегружен
   // Открывает сразу 1 лот на покупку плевать на условие времени. Но дальше если даже условие удовлетворяет (true) ничего не выставляет сигнала на покупку нет. Так и сидим с один лотом хотя пока баланс больше стоимости лота GetAsk() должен срабатывать сигнал на покупку.
   EnterLong(MinLot);
   }


В результате робот покупает один MinLot а дальше только сообщения приходят а сигнала нет

Вернуться в «Стратегии и роботы»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 32 гостя