Стратегии и роботы > Проблема при создании Стратегия докупки при превышении порога

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

Проблема при создании Стратегия докупки при превышении порога

Непрочитанное сообщение Sargon » Сегодня, 12:17

Хочу сделать стратегию на Long по инструменту TGLD.
Основной параметр это уровень при котором необходимо докупать измеряется в рублях (Int)
При превышении баланса на субщете выше уровеня порога. Баланс должен быть равен или больше уровень порога + стоимость одного лота (который может быть кратен х1,х10,х100 - зависит от инструмента)
При этом покупать доступный минимум.
Пример
цена лота 13 р.
Уровень баланса 5000 р.
При росте до 5013 и более покупаем сколько можем.
Идея была сделать индикатор баланса включить его в формулу стратегии что бы условием стратегии было привышение порога.

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

function Initialize()
{
// Область определения параметров индикатора

// Обязательные параметры:
   IndicatorName = "BalanceAccaunt";   // Задайте название индикатора и сохраните с данным именем
   PriceStudy = false;   // Рисовать в области цены (true – да, false – нет)
   AddInput("Input", Inputs.Price);   // Input - входной ряд (Inputs.Price) или свечи (Inputs.Candle)
 AddSeries("BalanceAccaunt", DrawAs.Line, Color.Red);   // Задаем вид линии индикатора A
}

function Evaluate()
{
// Область расчета значения индикатора

 BalanceAccaunt = GetCurrentBalance(RazdelGroupType.MICEX);;   // Присваиваем значение = баланс средств
}


Согласно доке на форуме
Но компилятор ругается
GetCurrentBalance отсутсвует в текущем контексте Ж-(

Аватара пользователя
evge
Администратор
Сообщения: 1818
Зарегистрирован: 04 фев 2016, 09:46
Откуда: Млечный путь, планета Земля
Благодарил (а): 83 раза
Поблагодарили: 375 раз
Контактная информация:

Re: Проблема при создании Стратегия докупки при превышении порога

Непрочитанное сообщение evge » Сегодня, 12:31

Добрый день,

Только в стратегиях доступно, в индикаторах нет.
никогда такого не было и вот опять

Sargon
Сообщения: 3
Зарегистрирован: Сегодня, 11:50

Re: Проблема при создании Стратегия докупки при превышении порога

Непрочитанное сообщение Sargon » Сегодня, 13:18

Спасибо то есть GetCurrentBalance(RazdelGroupType.MICEX) это корректный запрос?

Sargon
Сообщения: 3
Зарегистрирован: Сегодня, 11:50

Re: Проблема при создании Стратегия докупки при превышении порога

Непрочитанное сообщение Sargon » Сегодня, 14:33

Евгений подскажите пожалуйста Советник не открывает не одной сделки, баланс при тесте указываю 10000. Порог 5000. Поидеи должен открывать на разницу порядка 370 лотов сразу. Но тишина.

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

function Initialize()
{
   StrategyName = "MNT";
    // Уровень баланса, выше которого средства считаются "свободными" для покупки.
    // Измеряется в рублях.
    AddParameter("ThresholdLevel", 5000, "Уровень баланса для покупки (RUB)", 0);
    AddInput("Input1", Inputs.Candle, 1, true, "");
   LongLimit = 1;
   ShortLimit = -1;
}

function OnUpdate()
{
    // --- Получение данных о балансе ---
    var currentBalanceInfo = GetCurrentBalance(RazdelGroupType.MICEX);
    var currentBalance = currentBalanceInfo.Balance;

    // --- Получение данных об инструменте ---
    var quote = GetQuote(Input1);
    var currentPrice = quote.Last;
    var lotSize = LotSize();

// --- Проверка на корректность данных ---
    if (currentPrice <= 0 || lotSize <= 0)
    {
        ShowMessage("Ошибка: Некорректная цена или размер лота.");
        return;
    }

    // --- Расчет стоимости одного лота ---
    var lotCost = currentPrice * lotSize;
   
    // Вычисляем, сколько средств доступно для покупки сверх порога
    var deltaBalance = (double)currentBalance - (double)ThresholdLevel.Value + (double)lotCost;
   
    // --- Проверка условия для покупки ---
    if (deltaBalance >= 0)
    {
     // Вычисляем, сколько лотов акций/контрактов можно купить на эти средства (шт.)
     var lots = (int)Math.Floor(deltaBalance / lotCost);
     if (lots > lotSize) EnterLong(lots );
    }

}




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

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

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