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



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

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

Нарыл в сети такую формулу:
Код:
SAR(n+1) = SAR(n) + AF * (EP – SAR(n))

И описание к ней:
Цитата:
где SAR(n+1) – значение индикатора завтрашнего дня, SAR(n) – значение индикатора текущего дня, AF – фактор ускорения и EP – последняя зафиксированная точка экстремума.

Я так понимаю, что в Ами SAR не заглядывает в будущее, но даже при этом я не понимаю что за "EP – последняя зафиксированная точка экстремума"??
Может кто написать формулу SARы сразу на ами языке, я бы так быстрее понял.
Посмотреть профиль Отправить личное сообщение ICQ Number
000
Site Admin


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

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

Там пипец какая навороченная формула. Я однажды писал, задолбался. А сейчас найти не могу... Sad

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



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

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

000 писал(а):
Там пипец какая навороченная формула. Я однажды писал, задолбался. А сейчас найти не могу... Sad

Чо, серьёзно? И всё упирается в этот EP? Просто всё остальное то вроде проще простого... Этот EP нигде не расписан... видимо по этому.
Ну хорошо, даже не видя той формулы, Олег, подскажи, не заглядывает ли он в будущее у Ами (как его задумывал автор) и в какой момент i-бара, будет известен i-SAR? На закрытии?

А было бы интересно посчитать его в оригинале, с прицелом смотреть завтрашний SAR =)
Посмотреть профиль Отправить личное сообщение ICQ Number
000
Site Admin


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

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

В будущее не заглядывает.
Текущее значение параболика известно с прошлого бара.

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



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

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

000 писал(а):
В будущее не заглядывает.
Текущее значение параболика известно с прошлого бара.
Т.е. сегодняшний SAR был известен ещё вчера? хы)) Ладно, главное что брать Ref() нет смысла, я правильно понял?
Посмотреть профиль Отправить личное сообщение ICQ Number
000
Site Admin


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

СообщениеДобавлено: Вт Янв 04, 2011 1:31 am Ответить с цитатой Вернуться к началу

Совершенно верно.

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



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

СообщениеДобавлено: Вт Янв 04, 2011 1:36 pm Ответить с цитатой Вернуться к началу

000 писал(а):
Совершенно верно.
И всё-таки результат мне не нравится, он фантастический, я такие "граали" видал, когда покупал ниже лоу дня или продавал выше хая.
Если я использую в системе открытие свечи, могу я на открытии свечи уже пользоваться сегодняшним SARом?
Были бы торги уже глянул бы на минутках-пятиминутках Квика...
Посмотреть профиль Отправить личное сообщение ICQ Number
000
Site Admin


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

СообщениеДобавлено: Вт Янв 04, 2011 5:33 pm Ответить с цитатой Вернуться к началу

SAR не поменяется если только не произойдет реверс. Скорее всего Ты совершаешь сделку на открытии а при этом на истории уже известно, что на этой свечке был реверс.

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



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

СообщениеДобавлено: Вт Янв 04, 2011 7:50 pm Ответить с цитатой Вернуться к началу

000 писал(а):
SAR не поменяется если только не произойдет реверс. Скорее всего Ты совершаешь сделку на открытии а при этом на истории уже известно, что на этой свечке был реверс.
я так и думал, поэтому было бы полезно знать формулу...
Посмотреть профиль Отправить личное сообщение ICQ Number
Sergiovy



Зарегистрирован: 03.03.2008
Сообщения: 180
Откуда: Мурманск

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

kosbar писал(а):
000 писал(а):
SAR не поменяется если только не произойдет реверс. Скорее всего Ты совершаешь сделку на открытии а при этом на истории уже известно, что на этой свечке был реверс.
я так и думал, поэтому было бы полезно знать формулу...

Может конечно чего то не догоняю...
Расчет индикатора параболик (Parabolic SAR):

Индикатор Stop and Reverse Parabolic Time System (Wilder J. Wells) предназначается для открытия, удержания и выхода из позиции при игре на трендовом рынке. В любой момент времени можно определить значение цены Stop с помощью линии SAR по следующей формуле:

SAR(t) = SAR(t-1) + K(t)* [X(t) – SAR(t-1)]

Здесь переменные t и t-1 представляют собой текущий и предыдущий моменты времени соответственно, а X(t) представляет собой экстремальное значение цены на интервале, в течение которого значение индикатора изменяется в заданном направлении. Другими словами X(t) равно

X(t) = Minimum [Price(t)]

В случае же игры на понижение наибольшей цене соответствует X(t) = Maximum [Price(t)].

Скорость перемещения стопа изменяется с течением времени согласно следующей формуле:

K(t) = Step + (n-1)* Step
K(t)<=Maximum

Стандартные параметры:

Step = 2% и Maximum = 10*Step

http://lib.stepenko.com/articles-analythis-technical/230-parabolik-sar.html

_________________
"Единственная pабота, достойная нас, — pабота над собой". Шон де Уоppен
Посмотреть профиль Отправить личное сообщение
Teema



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

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

Код:
/////////////////////////////////
// Parabolic SAR re-implemented in
// native AFL.
//
// Example of for/if/else control statements
//
// Requires:
// AmiBroker 4.31.1
//
// Written by: Tomasz Janeczko
SetBarsRequired(300000,30000);
SetChartOptions(0,chartShowArrows|chartShowDates);


 SetPositionSize(50, spsPercentOfEquity);// % эквити

SetPositionSize(1, 4);
IAF = 0.01; // acceleration factor
MaxAF = 0.2; // max acceleration

psar = Close;    // initialize
long = 1; // assume long for initial conditions
af = IAF; // init acelleration factor
ep = Low[ 0 ]; // init extreme point
hp = High [ 0 ];
lp = Low [ 0 ];
price=Close;
for( i = 2; i < BarCount; i++ )
{
if ( long )
{
psar [ i ] = psar [ i-1 ] + af * ( hp - psar [ i-1 ] );
}
else
{
psar [ i ] = psar [ i-1 ] + af * ( lp - psar [ i-1 ] );
}

reverse = 0;
//check for reversal
if ( long )
{
if ( Low [ i ] < psar [ i ] )
{
price[i]=psar [ i ]; //ЭТО ЦЕНА!!!!!
long = 0; reverse = 1; // reverse position to Short
psar [ i ] = hp; // SAR is High point in prev trade
lp = Low [ i ];
af = IAF;
}
}
else
{
if ( High [ i ] > psar [ i ] )
{
price[i]=psar [ i ]; //ЭТО ЦЕНА!!!!!
long = 1; reverse = 1; //reverse position to long
psar [ i ] = lp;
hp = High [ i ];
af = IAF;
}
}

if ( reverse == 0 )
{
if ( long )
{
if ( High [ i ] > hp )
{
hp = High [ i ];
af = af + IAF;
if( af > MaxAF ) af = MaxAF;
}

if( Low[ i - 1 ] < psar[ i ] ) psar[ i ] = Low[ i - 1 ];
if( Low[ i - 2 ] < psar[ i ] ) psar[ i ] = Low[ i - 2 ];
}
else
{
if ( Low [ i ] < lp )
{
lp = Low [ i ];
af = af + IAF;
if( af > MaxAF ) af = MaxAF;
}   

if( High[ i - 1 ] > psar[ i ] ) psar[ i ] = High[ i - 1 ];
if( High[ i - 2 ] > psar[ i ] ) psar[ i ] = High[ i - 2 ];

}
}
}

Plot( Close, "Price", colorBlack, styleBar );
Plot( psar, "SAR", colorRed, styleDots | styleNoLine | styleThick );
Plot( price, "price", 5, styleThick );


Buy          =  Ref(C,-1)<Ref(psar,-1) AND  O>psar;
BuyPrice     =  Max(O,price);

Sell=   Ref(C,-1)>Ref(psar,-1) AND  O<psar;
SellPrice   =  Min(O,price);



Short        =   Ref(C,-1)>Ref(psar,-1) AND  O<psar;
ShortPrice   =  Min(O,price);


Cover =  Ref(C,-1)<Ref(psar,-1) AND  O>psar;
CoverPrice     =  Max(O,price);
   

Buy = ExRem( Buy, Sell );
Sell = ExRem( Sell, Buy );
Short = ExRem (Short, Cover);
Cover = ExRem (Cover, Short);
Equity(1);
PlotShapes(IIf(Buy, shapeUpArrow, shapeNone),colorGreen, 0,L, Offset=-15);                     
PlotShapes(IIf(Sell, shapeDownArrow, shapeNone),colorOrange, 0,H, Offset=-25);
PlotShapes(IIf(Short, shapeDownArrow, shapeNone),colorBlack, 0,H, Offset=-15);                     
PlotShapes(IIf(Cover, shapeUpArrow, shapeNone),colorBlue, 0,L, Offset=-25);


SAR система. Индикатор лень выделять.
Делал чтобы точно цену реверса определять. Если что не так, пишите.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Teema



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

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

У меня что-то формулы стали странным шрифтом прописыватья в форуме. Сообщение сделал, и сам прочитать не могу.
И на Hotmail с форума сообщения в виде кракозябликов приходят. Это из-за чего может быть? Уменя каких-то шрифтов нет?
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Teema



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

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

kosbar писал(а):
000 писал(а):
В будущее не заглядывает.
Текущее значение параболика известно с прошлого бара.
Т.е. сегодняшний SAR был известен ещё вчера? хы)) Ладно, главное что брать Ref() нет смысла, я правильно понял?


Вот и у меня криво сделано , но цену сделок нормально считает.
Если можно по другому, то как? H>price; ?
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
comatose



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

СообщениеДобавлено: Ср Фев 09, 2011 6:50 pm Ответить с цитатой Вернуться к началу

EP - это экстремальная цена в течение сделки
если мы в лонге (sar ниже цены) - это max high в течение этого лонга;
если в шорте (sar выше цены) - min low в течение шорта
Посмотреть профиль Отправить личное сообщение
Показать сообщения:      
Начать новую тему  Ответить на тему


 Перейти:   



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


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

File Attachment © by Meik Sievertsen