Страница 3 из 4
Re: PriceChannel – ценовой канал или Канал Дончяна
Добавлено: 23 апр 2019, 15:20
Orange2000
evge писал(а):Вижу что выход из позиции не происходит на том же живом баре, это не описано.
2 сигнала не принимает на одном баре, даже если он живой.
Поставил в тест при любой прибыли CurrentPLper() > 0 выход из позиции.
Цена на том же баре пошла в сторону прибыли +, но позиция не закрылась.
Появился через некоторое время новый бар и позиция была закрыта.
Уже существенный минус есть
ну у меня в моем роботе тоже выход произошел, но на октрытии след бара...в общем глюк)
Re: PriceChannel – ценовой канал или Канал Дончяна
Добавлено: 23 апр 2019, 15:21
evge
Более того,
Позиция была открыта на живом баре, затем 1-2 бара прибыли не было, пошла прибыль, НО позиция не закрывалась на живом баре.
Сигнал закрытия прошёл только при появлении нового бара.
Так что тут даже не 2 сделки на одном баре, а просто невыполнение сигнала ClosePosition() на живом баре.
Re: PriceChannel – ценовой канал или Канал Дончяна
Добавлено: 23 апр 2019, 15:27
evge
Или CurrentPLper() меняет состояние свое только при смене бара, тоже надо проверять.
т.к. условие там было простое
Re: PriceChannel – ценовой канал или Канал Дончяна
Добавлено: 23 апр 2019, 15:48
evge
ещё заметил, внутри 1 бара появлялся сигнал и на Long и на Short
но выполнился только один, второй игнорировался до появления нового бара.
Re: PriceChannel – ценовой канал или Канал Дончяна
Добавлено: 23 апр 2019, 16:02
oxi
Все правильно. На одном баре один сигнал.
Кроме стопа.
Re: PriceChannel – ценовой канал или Канал Дончяна
Добавлено: 23 апр 2019, 17:19
evge
oxi писал(а):Все правильно. На одном баре один сигнал.
Кроме стопа.
Закрытие позиции ClosePosition() выполнится на следующем баре при появлении сигнала
Может конечно я что-то упустил и может надо ещё раз перепроверить.
Сигнал был по прибыли, но выполнение прошло только на следующем баре после сигнала (на следующем тоже выполнялось условие).
Re: PriceChannel – ценовой канал или Канал Дончяна
Добавлено: 23 апр 2019, 17:22
oxi
Можно поставить BRS после открытия позиции и исполнится на том же баре
Re: PriceChannel – ценовой канал или Канал Дончяна
Добавлено: 23 апр 2019, 18:49
Orange2000
что такое BRS?
так как же все таки заставить работать робот?
Из альфы ответили, что все должно работать
Re: PriceChannel – ценовой канал или Канал Дончяна
Добавлено: 23 апр 2019, 19:06
oxi
Вот пример.
Покупаем, когда цена выше предыдущего хая (внутри бара) и выставляем тейк и стоп
Продаем, когда цена ниже предыдущего лоя (внутри бара) и выставляем тейк и стоп
SRM9 и 3 минуты
Код: Выделить всё
function Initialize()
{
StrategyName = "example_LiveBar_Break";
AddInput("Input1", Inputs.Candle, 5, true, "SBER=МБ ЦК");
// Включаем режим живого бара
UseClosedBar = false; // Флаг - торговать на незакрытом баре
// Используем максимальную частоту обновления
//TimeStepSeconds = 5; // не менее 5 секунд
}
function OnUpdate()
{
// Аlfadirect.
// Пример стратегии на живом баре
double pos = CurrentPosition();
double b = GetBid();
double a = GetAsk();
if (Input1.Close[0] > Input1.High[1] && pos == 0)
{
EnterLongLimit(b, LotSize());
BreakingStop(b-50, b+10, SignalPriceType.Price);
}
if (Input1.Close[0] < Input1.Low[1] && pos == 0)
{
EnterShortLimit(a, LotSize());
BreakingStop(a+50, a-10, SignalPriceType.Price);
}
ShowMessage(string.Format("close={0} high={1} low={2}", Input1.Close[0], Input1.High[1], Input1.Low[1]));
}
Re: PriceChannel – ценовой канал или Канал Дончяна
Добавлено: 23 апр 2019, 19:49
Orange2000
Код: Выделить всё
if (Input1.Close[0] > Input1.High[1] && pos == 0)
а у меня после конструктора делалось Input1.high просто. а надо видимо еще [0]
сейчас проверяю.
upd. Заработало!!!!