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


Зарегистрирован: 08.04.2008
Сообщения: 643
Откуда: от "Верблюда"

СообщениеДобавлено: Пт Апр 25, 2008 7:20 am Ответить с цитатой Вернуться к началу

Вот так красиво выглядит на бумаге (метос):

Строится простая скользящая средняя от цены по барам закрытия, на её основе строится RSI. Скользящая средняя используется для сглаживания графика цены и выявления трендовой направленности. RSI определяет скорость изменения цены, т.е. при замедлении повышательной или понижательной тенденции вероятнее всего, что в ближайшем времени произойдет разворот тенденции, осциллятор RSI отлавливает снижение скорости тенденций и указывает на смену направленности рынка.
Торговые сигналы: RSI от одной скользящей средней пересекает RSI, построенный от второй скользящей средней. Система является «реверсной», т.е. при открытии длиной позиции закрывается короткая, и наоборот, при открытии короткой позиции длинная закрывается.
Открытие длинной позиции:

X:= 100-(100/(1+(Wilders(If(Mov(C,opt1,S)>Ref(Mov(C,opt1,S),-1),Mov(C,opt1,S)-Ref(Mov(C,opt1,S), -1),0),25)/Wilders(If((Mov(C,opt1,S)<Ref(Mov(C,opt1,S),-1) OR (Mov(C,opt1,S)=Ref(Mov(C,opt1,S), -1))),Ref(Mov(C,opt1,S),-1)-Mov(C,opt1,S),0),opt2))));
Y:= 100-(100/(1+(Wilders(If(Mov(C,opt3,S)>Ref(Mov(C,opt3,S),-1),Mov(C,opt3,S)-Ref(Mov(C,opt3,S), -1),0),25)/Wilders(If((Mov(C,opt3,S)<Ref(Mov(C,opt3,S),-1) OR (Mov(C,opt3,S)=Ref(Mov(C,opt3,S), -1))),Ref(Mov(C,opt3,S),-1)-Mov(C,opt3,S),0),opt4))));
Cross(X,Y)
Открытие короткой позиции:
X:= 100-(100/(1+(Wilders(If(Mov(C,opt1,S)>Ref(Mov(C,opt1,S),-1),Mov(C,opt1,S)-Ref(Mov(C,opt1,S), -1),0),25)/Wilders(If((Mov(C,opt1,S)<Ref(Mov(C,opt1,S),-1) OR (Mov(C,opt1,S)=Ref(Mov(C,opt1,S), -1))),Ref(Mov(C,opt1,S),-1)-Mov(C,opt1,S),0),opt2))));
Y:= 100-(100/(1+(Wilders(If(Mov(C,opt3,S)>Ref(Mov(C,opt3,S),-1),Mov(C,opt3,S)-Ref(Mov(C,opt3,S), -1),0),25)/Wilders(If((Mov(C,opt3,S)<Ref(Mov(C,opt3,S),-1) OR (Mov(C,opt3,S)=Ref(Mov(C,opt3,S), -1))),Ref(Mov(C,opt3,S),-1)-Mov(C,opt3,S),0),opt4))));
Cross(X,Y)
Закрытие длинной позиции:
X:= 100-(100/(1+(Wilders(If(Mov(C,opt1,S)>Ref(Mov(C,opt1,S),-1),Mov(C,opt1,S)-Ref(Mov(C,opt1,S), -1),0),25)/Wilders(If((Mov(C,opt1,S)<Ref(Mov(C,opt1,S),-1) OR (Mov(C,opt1,S)=Ref(Mov(C,opt1,S), -1))),Ref(Mov(C,opt1,S),-1)-Mov(C,opt1,S),0),opt2))));
Y:= 100-(100/(1+(Wilders(If(Mov(C,opt3,S)>Ref(Mov(C,opt3,S),-1),Mov(C,opt3,S)-Ref(Mov(C,opt3,S), -1),0),25)/Wilders(If((Mov(C,opt3,S)<Ref(Mov(C,opt3,S),-1) OR (Mov(C,opt3,S)=Ref(Mov(C,opt3,S), -1))),Ref(Mov(C,opt3,S),-1)-Mov(C,opt3,S),0),opt4))));
Cross(X,Y)
Закрытие короткой позиции:
X:= 100-(100/(1+(Wilders(If(Mov(C,opt1,S)>Ref(Mov(C,opt1,S),-1),Mov(C,opt1,S)-Ref(Mov(C,opt1,S), -1),0),25)/Wilders(If((Mov(C,opt1,S)<Ref(Mov(C,opt1,S),-1) OR (Mov(C,opt1,S)=Ref(Mov(C,opt1,S), -1))),Ref(Mov(C,opt1,S),-1)-Mov(C,opt1,S),0),opt2))));
Y:= 100-(100/(1+(Wilders(If(Mov(C,opt3,S)>Ref(Mov(C,opt3,S),-1),Mov(C,opt3,S)-Ref(Mov(C,opt3,S), -1),0),25)/Wilders(If((Mov(C,opt3,S)<Ref(Mov(C,opt3,S),-1) OR (Mov(C,opt3,S)=Ref(Mov(C,opt3,S), -1))),Ref(Mov(C,opt3,S),-1)-Mov(C,opt3,S),0),opt4))));
Cross(X,Y)
opt1 – период первой скользящей средней;
opt2 – период первого RSI;
opt3 – период первой скользящей средней;
opt4 – период первого RSI.



А вот так если не выделываться в ами:
Код:

Opt1 = Optimize("opt1", 74, 50,150,10);
Opt2 = Optimize("opt2",111, 10,150,10);
Opt3 = Optimize("opt3", 91, 50,150,10);
Opt4 = Optimize("opt4", 97, 10,150,10);

MA1 = MA(C,Opt1);
MA2 = MA(C,Opt3);

x1 = RSIa( MA1, Opt2);
y1 = RSIa( MA2, Opt4);
 
Buy = Cross(x1,y1);

Short = Cross(y1,x1);

Sell = Short;
Cover = Buy;


BuyPrice = SellPrice = ShortPrice = CoverPrice = C;

Buy = ExRem(Buy,Sell);
Sell = ExRem(Sell,Buy);
Short = ExRem(Short,Cover);
Cover = ExRem(Cover,Short);
 
PlotShapes(IIf(Buy,shapeUpArrow,shapeNone),colorGreen,0,L);
PlotShapes(IIf(Sell,shapeHollowDownArrow,shapeNone),colorRed,0,H);
PlotShapes(IIf(Short, shapeDownArrow,shapeNone),colorRed,0,H);
PlotShapes(IIf(Cover,shapeHollowUpArrow,shapeNone),colorGreen,0,L);

Plot( RSIa( MA1, Opt2), _DEFAULT_NAME(), ParamColor( "Color", colorCycle ), ParamStyle("Style")  );
Plot( RSIa( MA2, Opt4), _DEFAULT_NAME(), ParamColor( "Color", colorCycle ), ParamStyle("Style")  );



Если внимельно кто глянет увидит конкретный косяк в правилах, так что я его исправил.

_________________
Юра
Посмотреть профиль Отправить личное сообщение Отправить e-mail
диван



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

СообщениеДобавлено: Сб Май 03, 2008 9:52 pm Ответить с цитатой Вернуться к началу

Юра, подскажи, оптимизируемые периоды МА и RSI в твоем коде
Opt1 = Optimize("opt1", 74, 50,150,10);
Opt2 = Optimize("opt2",111, 10,150,10);
74
111 ?
А остальные что означают? Где можно почитать про ALF?

_________________
Алексей
Посмотреть профиль Отправить личное сообщение
commenced
Советник


Зарегистрирован: 08.04.2008
Сообщения: 643
Откуда: от "Верблюда"

СообщениеДобавлено: Вс Май 04, 2008 6:10 am Ответить с цитатой Вернуться к началу

диван писал(а):
Юра, подскажи, оптимизируемые периоды МА и RSI в твоем коде
Opt1 = Optimize("opt1", 74, 50,150,10);
Opt2 = Optimize("opt2",111, 10,150,10);
74
111 ?
А остальные что означают? Где можно почитать про ALF?


Opt1 = Optimize("наименование столбца", стоит в системе сейчас, минимум, максимум, шаг);

Скачай с сайта переведенный Олегом хелп, часть функций он перевел на русский.

_________________
Юра
Посмотреть профиль Отправить личное сообщение Отправить e-mail
диван



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

СообщениеДобавлено: Вс Май 04, 2008 9:12 am Ответить с цитатой Вернуться к началу

Спасибо, долго искал в хелпе знакомые русские буквы Very Happy . Буду читать.
И Олегу спасибо за сей труд!

_________________
Алексей
Посмотреть профиль Отправить личное сообщение
Bobi



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

СообщениеДобавлено: Сб Июн 07, 2008 1:49 pm Ответить с цитатой Вернуться к началу

я чего то не понял. Почему открытие по цене закрытия?
да , и еще: На каких инструментах и временном интервале был протестен сей индюк? Я тестил подобное на рустоках, он в одиночку показывает бред.

p.s.: Как вариант. можно попробывать не только Rsi
Посмотреть профиль Отправить личное сообщение
commenced
Советник


Зарегистрирован: 08.04.2008
Сообщения: 643
Откуда: от "Верблюда"

СообщениеДобавлено: Сб Июн 07, 2008 3:05 pm Ответить с цитатой Вернуться к началу

Bobi писал(а):
я чего то не понял. Почему открытие по цене закрытия?
да , и еще: На каких инструментах и временном интервале был протестен сей индюк? Я тестил подобное на рустоках, он в одиночку показывает бред.

p.s.: Как вариант. можно попробывать не только Rsi


Я тупо переписал код с метоса в ами. Если тебе интересно, предлогай идею, в реализации всегда помогут форумчане.

_________________
Юра
Посмотреть профиль Отправить личное сообщение Отправить e-mail
Bobi



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

СообщениеДобавлено: Сб Июн 07, 2008 5:11 pm Ответить с цитатой Вернуться к началу

интересно . поэтому и спросил. Раз тупо, тогда понятно. Ну так давайте разберем по полкам? Я предлагаю пересмотреть вход, т.е. взять при кросах цену открытия или при сравнении с помощью ">" или "<" и искать более подходящую свечу после сигнальной, скажем если след.свеча по хаю выше хая сигнальной свечки.

но для начала нужно ОБЯЗАТЕЛЬНО вписать коммисию с проскальзованием, а иначе сами себя обманем Smile
Посмотреть профиль Отправить личное сообщение
Bobi



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

СообщениеДобавлено: Сб Июн 07, 2008 5:14 pm Ответить с цитатой Вернуться к началу

кстати еще вариант наоборот: не RSI от MA, а MA от RSI
Посмотреть профиль Отправить личное сообщение
commenced
Советник


Зарегистрирован: 08.04.2008
Сообщения: 643
Откуда: от "Верблюда"

СообщениеДобавлено: Сб Июн 07, 2008 6:19 pm Ответить с цитатой Вернуться к началу

Bobi писал(а):
кстати еще вариант наоборот: не RSI от MA, а MA от RSI


Ты не правильно понял, сайт создан для изучения конкретной программы и написания в ней систем, я по крайне мере не буду писать системы для каждого предложившего идею, ты сам начинай ее писать, а если с написанием возникнет проблема(С НАПИСАНИЕМ) вот тогда обращайся. Кстати по коду, а что по твоему он должен брать, но это так просто не пойму, что ты имел ввиду. Коды сбрасывал, чтоб начался диалог, некоторые именно мои ранние, накоторые это хваленые системы с указанной доходностью производителя в 100% годовых, зато легкие и видно как по аналогии писать свои системы.

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


 Перейти:   



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


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

File Attachment © by Meik Sievertsen