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



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

СообщениеДобавлено: Сб Ноя 06, 2010 6:14 pm Ответить с цитатой Вернуться к началу

ищу сабж.

скажем, есть фьючерс и я хочу посмотреть как в процентном соотношении цена на него в среднем менялась в течении определённого периода(например осени или года) за последние 5 лет.

может кто-то подсказать софнинки срециализированные, чтоб построить такое чудо?
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Сб Ноя 06, 2010 8:58 pm Ответить с цитатой Вернуться к началу

Посмотри это. Там почти готовый код того, что надо.

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



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

СообщениеДобавлено: Пн Апр 25, 2011 4:43 pm Ответить с цитатой Вернуться к началу

000 писал(а):
Посмотри это. Там почти готовый код того, что надо.


только сейчас руки дошли, снова размяться в AFL и сразу такая задача.

спасибо за линк, но там не то усреднение, мне нужно сначала преобразовать в график изменения цены в процентах за каждый год в отдельности, а потом вывести среднее по всем результатам. Rolling Eyes

сейчас буду мучаться, так что не расслабляйтесь. Laughing
Посмотреть профиль Отправить личное сообщение
MrDrJOKER



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

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

вот нарыл довольно неплохую реализацию в yahoo groups ами от чела под ником Mike.

Код:


baseColor = colorDarkRed;
boundaryColor = colorLightGrey;

years = Param( "Years", 3, 1, 15, 1 );
newYear = Year() != Ref( Year(), -1 );
avgROC = 0;

// Create dynamic variables for each year (excluding current)
for ( y = 1; y <= years; y++ )
{
     initialValue = ValueWhen( newYear, Close, y + 1 );
     barValue = Ref( Close, -252 * y );
     runningROC = ( ( barValue / initialValue ) - 1 ) * 100;
     VarSet( "Year" + y, runningROC );
     avgROC += runningROC;
}

avgROC /= years;

// Plot zero line
Plot( 0, "", boundaryColor, styleLine | StyleThick | StyleNoLabel );

// Plot vertical lines for new year markers
Plot( newYear, "", boundaryColor, styleHistogram | styleThick |
styleOwnScale | styleNoLabel );

// Plot current year with thick emphasis
initialValue = ValueWhen( newYear, Close, 1 );
barValue = Close;
runningROC = ( ( barValue / initialValue ) - 1 ) * 100;
Plot( runningROC, "ROC", baseColor, styleThick );

// Plot previous years with incrementing colors
titleStr = StrFormat( ", Bar %g, Current: %g, Initial: %g", BarIndex(),
barValue, initialValue );
titleStr += StrFormat( "\n" + EncodeColor( baseColor ) + "This year:
%2.1f%%", runningROC );

for ( y = 1; y <= years; y++ )
{
     value = VarGet( "Year" + y );
     titleStr += StrFormat( "\n" + EncodeColor( baseColor + y ) + y + "
year" + WriteIf( y > 1, "s", "" ) + " ago: %2.1f%%", value );
     Plot( value, "" + y + " years ago", baseColor + y );
}

// Plot average as solid area
Plot( avgROC, "Avg.", baseColor + y, styleArea | styleNoLabel );

Title = NumToStr( DateTime(), formatDateTime ) + titleStr + StrFormat(
"\n" + EncodeColor( baseColor + y ) + "Average: %2.1f%%", avgROC );




p.s.: тут есть несколько иной, не такой гибкий вариант.
Посмотреть профиль Отправить личное сообщение
Показать сообщения:      
Начать новую тему  Ответить на тему


 Перейти:   



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


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

File Attachment © by Meik Sievertsen