Список форумов AmiSite.ru AmiSite.ru
Форум по Ами
 FAQ  •  Поиск  •  Пользователи  •  Группы   •  Регистрация  •  Профиль  •  Войти и проверить личные сообщения  •  Вход
 Как приручить переворотную стратегию Следующая тема
Предыдущая тема
Начать новую тему  Ответить на тему
Автор Сообщение
knell009



Зарегистрирован: 21.11.2011
Сообщения: 24

СообщениеДобавлено: Чт Дек 01, 2011 10:37 pm Ответить с цитатой Вернуться к началу

Привет!
Задача на первый взгляд не трудная.
Есть переворотная стратегия.
При ее запуске выполняются сразу 2 условия:
Buy = a1 > bbtop;
Cover = a1 > bbtop;
или
Sell = a1 < bbbot;
Short = a1 < bbbot;

Вопрос: Как сделать так чтобы при первом сигнале Buy/Short не выполнялись Cover/Sell
(в последующем же необходимо чтобы все условия выполнялись)
В тестере эти вопросы не возникают, т.к. тестер по умолчанию работает правильно.
Как же избавится от того что в начале торгового для закрываем несуществующую позицию и открываем новую.

КОД:

//--условия входа/выхода------------
Buy = a1 > bbtop;
Sell = a1 < bbbot;
Short = a1 < bbbot;
Cover = a1 > bbtop;

//---снятие избыточных сигналов.----
Buy = ExRem(Buy,Sell);
Sell = ExRem(Sell,Buy);
Short = ExRem(Short,Cover);
Cover = ExRem(Cover,Short);

//----------------------------------
Buy = Ref(Buy, -1);
Sell = Ref(Sell, -1);
Short = Ref(Short, -1);
Cover = Ref(Cover, -1);

_________________
knell
Посмотреть профиль Отправить личное сообщение
000
Site Admin


Зарегистрирован: 10.12.2007
Сообщения: 9106

СообщениеДобавлено: Чт Дек 01, 2011 11:16 pm Ответить с цитатой Вернуться к началу

Я так понял, что в конце дня реально позиция закрывается в любом случае (руками) а в роботе/системе этого закрытия нет и робот пытается закрыть позу открытую вчера?
Проще всего исправить добавив в правила системы закрытие в конце дня.
Типа
Sell = ... OR TimeNum() == 235400;
Cover = ... OR TimeNum() == 235400;

Время надо изменить в зависимости от рынка и рабочего фрейма.

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
knell009



Зарегистрирован: 21.11.2011
Сообщения: 24

СообщениеДобавлено: Пт Дек 02, 2011 12:02 am Ответить с цитатой Вернуться к началу

000 писал(а):
Я так понял, что в конце дня реально позиция закрывается в любом случае (руками) а в роботе/системе этого закрытия нет и робот пытается закрыть позу открытую вчера?.

Нет. У меня в стратегии есть ограничение по времени. и выходит она четко. Закрывает как надо, т.е. не переносит позы на следующий день. Просто я убрал все лишнее из кода.., чтобы не отвлекаться на мелочи.
Проблема только при начале торгов. В соответствии с условиями робот кинет 2 сделки, а нужно чтобы только одну. А в следующих сигналах он работает гуд, закрывает и открывает.

_________________
knell
Посмотреть профиль Отправить личное сообщение
knell009



Зарегистрирован: 21.11.2011
Сообщения: 24

СообщениеДобавлено: Пт Дек 02, 2011 12:09 am Ответить с цитатой Вернуться к началу

Подумав логически, можно было бы написать так:
Buy = a1 > bbtop;
Sell = IIf( a1 < bbbot AND LastValue(Buy), 1, 0);
Short = a1 < bbbot;
Cover = IIf( a1 > bbtop AND LastValue(Short), 1, 0);

но оно не работает

_________________
knell
Посмотреть профиль Отправить личное сообщение
000
Site Admin


Зарегистрирован: 10.12.2007
Сообщения: 9106

СообщениеДобавлено: Пт Дек 02, 2011 12:25 am Ответить с цитатой Вернуться к началу

Я никак не могу понять откуда и почему берется лишний сигнал. Тут надо не устранить появившийся лишний сигнал а убрать причину его появления.

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
knell009



Зарегистрирован: 21.11.2011
Сообщения: 24

СообщениеДобавлено: Пт Дек 02, 2011 10:26 pm Ответить с цитатой Вернуться к началу

000 писал(а):
Я никак не могу понять откуда и почему берется лишний сигнал. Тут надо не устранить появившийся лишний сигнал а убрать причину его появления.
Спасибо за ответ. Он мне помог понять что такого в принципе не должно быть... так и есть все дело оказалось в условиях стратегии..., она оказалась не совсем переворотной... Переделал код и все получилось.
Еще раз спасибо.

_________________
knell
Посмотреть профиль Отправить личное сообщение
Показать сообщения:      
Начать новую тему  Ответить на тему


 Перейти:   



Следующая тема
Предыдущая тема
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете вкладывать файлы
Вы не можете скачивать файлы


Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme :: Часовой пояс: GMT + 3

File Attachment © by Meik Sievertsen