Автор |
Сообщение |
SImple
Зарегистрирован: 31.12.2009
Сообщения: 31
|
есть чтото типа боллинджера, пущеной по нему средней и например рси, и я вот думаю, как сделать так, чтобы когда рси выше топ - шорт, как только отскочил до средней - срабатывал стоптейкпрофит, ну и соответсвенно тоже самое про бот. Для меня проблема в том, что средняя является необходимым условием закрытия и для шорта, и для лонга, поэтому путаница какаято получается.
Подкиньте направление, как лучше написать.
Спасибо заранее. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Цитата: |
есть чтото типа боллинджера, пущеной по нему средней и например рси |
Вот это нифига не понял. Соответственно и подсказать ничего не могу.
Постарайся понятнее написать... |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
SImple
Зарегистрирован: 31.12.2009
Сообщения: 31
|
000 писал(а): |
Цитата: |
есть чтото типа боллинджера, пущеной по нему средней и например рси |
Вот это нифига не понял. Соответственно и подсказать ничего не могу.
Постарайся понятнее написать... |
Значит так. Рисую РСИ, потом от нее рисую канал боллинджера и ко всему этому добавляю еще среднюю скользящую. Получется типа рси бъется в канале боллинджера, а средняя делит его пополам.
Условие лонг - когда Рси пересечет нижний канал боллинджера снизу вверх.
Закрытие лонга когда рси пересечет снизу вверх среднюю скользящую .
Условие шорт - Рси сверху вниз пересекает верхний канал. Cover -когда рси пересечет сверху вниз среднюю.
Примерно так.
Хотелось бы чтобы автомат заходил в шорт или лонг только по указанным выше условиям. А у меня получается что не открытый шорт закрывается когда рси пересекает среднюю и т.д.
Надеюсь изложил более понятно). |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Так это для робота? Т.е. протестировать эту систему получилось?
Или для теста?
Если для теста, то непонятно как тестер может закрывать не открытый шорт. Это в принципе исключено.
Ну и свой код покажи. Если есть ошибки подскажу. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
SImple
Зарегистрирован: 31.12.2009
Сообщения: 31
|
000 писал(а): |
Так это для робота? Т.е. протестировать эту систему получилось?
Или для теста?
Если для теста, то непонятно как тестер может закрывать не открытый шорт. Это в принципе исключено.
Ну и свой код покажи. Если есть ошибки подскажу. |
Вот как раз при попытке теста выдает лишние сигналы.
Написано так:
Short = Cross ( BBtop, RSI);
Cover = Cross (MA, RSI);
Buy = Cross (RSI, BBbot);
Sell = Cross (RSI, MA);
Получается если РСИ не коснулся Верхней границы Боллинджера и пошел вниз, т.е. условие для шорта не выполнилось, пересекает МА, соответственно сигнал для Cover.
Может это коряво как то, но по-другому я пока не додумался) |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Тестируешь робота или систему?
Вероятно робота гоняешь и смотришь tri ? |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
SImple
Зарегистрирован: 31.12.2009
Сообщения: 31
|
000 писал(а): |
Тестируешь робота или систему?
Вероятно робота гоняешь и смотришь tri ? |
Да, именно. Тестирую робота и смотрю в три. Мне кажется так более объективно получается. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Покажи вот этот кусок робота
Код: |
////////// Правила системы ///////////////
Buy = Cross(C, MA(C, 10));
Sell = Cross(MA(C, 10), C);
Short = Sell;
Cover = Buy;
//////////////////////////////////////////
Equity(1, 0);
Buy = LastValue(Ref(Buy, -1));
Sell = LastValue(Ref(Sell, -1));
Short = LastValue(Ref(Short, -1));
Cover = LastValue(Ref(Cover, -1));
//////////// Формируем транзакцию.//////////////
////////////////////////////////////////////////
//////// !!!!СЮДА РУКАМИ НЕ ЛАЗИТЬ!!!! /////////
////////////////////////////////////////////////
|
А вообще сперва надо в тестере проверить систему (не в роботе)
Потом можно проверить код робота... |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
SImple
Зарегистрирован: 31.12.2009
Сообщения: 31
|
//////// Установки ///////////
TimeFrame = 60; // таймфрейм в секундах.
Account = ""; // ваш аккаунт на бирже
Client = ""; // код клиента
Lots = 1; // сколько лотов желаете торговать
Otstup = 1; // в процентах. Заявка будет выставлена хуже текущей цены на столько процентов
FileName = "D:/FORTS/transaction.tri"; // слэши прямые!!! имя файла с транзакциями для квика
dir = 0;
////////// Правила системы ///////////////
SetChartBkGradientFill( ParamColor("BgTop", ColorRGB( 172,172,172 )),
ParamColor("BgBottom", ColorRGB( 172,172,172 )),ParamColor("titleblock",ColorRGB( 172,172,172 )));
;
_SECTION_BEGIN("RSI");
SetChartOptions(0,0,chartGrid30|chartGrid70);
periods = Param( "Periods", 15, 1, 200, 1 );
Plot( RSI( periods), _DEFAULT_NAME(), ParamColor( "Color", colorCycle ), ParamStyle("Style") );
_SECTION_END();
_SECTION_BEGIN("Bollinger Bands");
P = ParamField("Price field",-1);
Periods = Param("Periods", 15, 2, 300, 1 );
Width = Param("Width", 2, 0, 10, 0.05 );
Color = ParamColor("Color", colorCycle );
Style = ParamStyle("Style");
Plot( BBandTop( P, Periods, Width ), "BBTop" + _PARAM_VALUES(), Color, Style );
Plot( BBandBot( P, Periods, Width ), "BBBot" + _PARAM_VALUES(), Color, Style );
_SECTION_END();
_SECTION_BEGIN("MA");
P = ParamField("Price field",-1);
Periods = Param("Periods", 15, 2, 300, 1, 10 );
Plot( MA( P, Periods ), _DEFAULT_NAME(), ParamColor( "Color", colorCycle ), ParamStyle("Style") );
_SECTION_END();
Buy = Cross ( RSI (periods), BBandBot (p, periods, Width));
Sell = Cross (RSI (periods), MA (P, periods));
Short = Cross (BBandTop (P, periods, Width), RSI (periods));
Cover = Cross (MA (P, periods), RSI (periods));
//////////////////////////////////////////
Equity(1, 0);
Buy = LastValue(Ref(Buy, -1));
Sell = LastValue(Ref(Sell, -1));
Short = LastValue(Ref(Short, -1));
Cover = LastValue(Ref(Cover, -1));
//////////// Формируем транзакцию.//////////////
////////////////////////////////////////////////
//////// !!!!СЮДА РУКАМИ НЕ ЛАЗИТЬ!!!! /////////
//////////////////////////////////////////////// |
|
|
Посмотреть профиль Отправить личное сообщение |
|
SImple
Зарегистрирован: 31.12.2009
Сообщения: 31
|
Олег, и еще один вопрос. Если, например, у меня есть индикатор - некая линия, мне нужно на ее исгибах либо в лонг, либо в шорт.
Пишу так:
Buy = pr > Ref (pr, -1);
Sell = pr < Ref (pr, -1);
Short = 0;
Cover = 0;
Ну а если линию слегка колбасит на отрезке 3-5 баров, как лучше сделать так, чтобы не реагировать на эти колебания? Сравнивать еще Ref (pr, -1) и Ref (pr, -2); ?
Thanks in advance! |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Цитата: |
Ну а если линию слегка колбасит на отрезке 3-5 баров, как лучше сделать так, чтобы не реагировать на эти колебания? Сравнивать еще Ref (pr, -1) и Ref (pr, -2); ?
|
Можно и так, а можно взять мувинг или середину между HHV и LLV
По поводу робота.
Если робот через АА, то я не уверен как будет там работать ParamField...
Вполне возможно, что косяк именно в этом.
И вообще. Если робот работает через АА, то не надо в него вставлять функции вывода (Plot) и другие прибамбасы типа Param
Если уж так необходима графика, то пишите для неё отдельный код. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
SImple
Зарегистрирован: 31.12.2009
Сообщения: 31
|
Спасибо, попробую переделать! |
|
|
Посмотреть профиль Отправить личное сообщение |
|
|
|
Следующая тема
Предыдущая тема
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете вкладывать файлы Вы не можете скачивать файлы
|
|