Рус Eng Cn Перевести страницу на:  
Please select your language to translate the article


You can just close the window to don't translate
Библиотека
ваш профиль

Вернуться к содержанию

Кибернетика и программирование
Правильная ссылка на статью:

Использование программного пакета технического и графического анализа данных Wealth Lab для оценки эффективности и применения торгового алгоритма

Милованов Максим Михайлович

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

654007, Россия, Кемеровская область, г. Новокузнецк, ул. Кирова, 42

Milovanov Maksim Mikhailovich

Senior Lecturer, Siberian State Industrial University

654007, Russia, Kemerovskaya oblast', g. Novokuznetsk, ul. Kirova, 42

mirovan@narod.ru
Другие публикации этого автора
 

 

DOI:

10.7256/2306-4196.2015.3.15411

Дата направления статьи в редакцию:

29-05-2015


Дата публикации:

14-06-2015


Аннотация: Современные программные средства позволяют использовать методы технического и графического анализа для построения графиков и прогнозирования на основе технических индикаторов и осцилляторов. В статье приводится методика построения торгового алгоритма для фондового рынка с применением пакета Wealth Lab. Рассматривается функционал программного пакета Wealth Lab. Дается описание торгового алгоритма на основе стандартных индикаторов, доступных в программном пакете Wealth Lab. Приводится анализ разработанного алгоритма и дана оценка эффективности на основе полученных данных. В качестве метода исследования применяется наблюдение. Объектом исследования являются набор данных, характеризуемых ценой и временем. В связи с тем что фондовый рынок постоянно изменяется, необходимо иметь четкий торговый алгоритм для возможности получения прибыли. Применение программного пакета позволяет провести оценку торгового алгоритма. Использование методов поиска оптимального решения задачи подбора параметров, таких как полный перебор и метод Монте-Карло, позволяет получить необходимые данные для применения. Пакет Wealth Lab позволяет, используя язык C#, протестировать алгоритм, с помощью оптимизатора определить параметры, а встроенные функции построения графиков оценить работу алгоритма визуально.


Ключевые слова:

фондовый рынок, фьючерс, экономика, алгоритм, технический анализ, программные средства, поиск оптимального решения, метод Монте-Карло, оптимизация, прогнозирование

Abstract: Modern software allows using technical and graphical analysis to build charts and predictions based on the technical indicators and oscillators. The article describes a technique of making a trading algorithm for stock market using Wealth Lab. The author reviews features of Wealth Lab and describes trading algorithm using standard indicators available in Wealth Lab. The article gives and analysis of the developed algorithm and shows the evaluation of its effectiveness based on the gathered data. Observation is the main method of the study. The author observes a set of data, described by the price and time. Since stock market is constantly changing, it is urgent to have an accurate trading algorithm to make a profit. Applying software allows to evaluate the algorithm. Using techniques of finding the optimal solution of the problem of selection of the parameters, such as exhaustive search and Monte Carlo method, author gathers all data needed. The Wealth Lab allows to test the algorithm using C#, find parameters using optimizer and build charts using build-in methods to evaluate the performance of the algorithm visually.


Keywords:

Monte Carlo method, optimal solutions, software, technical analysis, algoritm, economic, futures, stock market, optimization, prediction

Для оценки и прогнозирования поведения линейного финансового актива (акции, индекса, фьючерсов и т.д.) используется в основном два подхода – фундаментальный и на базе технического анализа. Фундаментальный анализ руководствуется качественным и количественным анализом отчетности компаний, технический анализ позволяет прогнозировать поведение изменения цены актива на основе закономерностей, основанных на изменениях цен в прошлом.

Рассмотрим на примере построения торгового алгоритма, каким образом можно спрогнозировать поведение финансового актива, руководствуясь только техническими индикаторами. В качестве примера возьмем два индикатора:

1) трендовый индикатор ADX, который указывает направление развития ценовой тенденции. В его основе лежит две составляющие:

- +DI — значение индикатора позитивного направления движения цен (positive directional index);

- -DI — значение индикатора отрицательного направления движения цен (negative directional index).

.png_01

где N – количество периодов

2) индикатор CCI, основанный на вероятном отклонении простой скользящей средней от характерной цены:

.png_02

где

.png_03

Как известно, чтобы система обладала свойством робастности, т.е. нечувствительности в отношении к выбросам, а как следствие устойчивостью в будущем, не должно быть слишком много параметров. Для нашей системы, основанной на индикаторах, такими параметрами будут:

  • период индикатора CCI,
  • период индикатора ADX.

При этом для индикатора CCI сигналом на вход в длинную позицию будет нахождение выше отметки 100, в короткую позицию — нахождение ниже отметки -100. Для индикатора ADX должно выполняться условие — ADX[bar] > ADX[bar-1], т.е. абсолютное значение индикатора должно увеличиваться. Чтобы попасть в начало тренда, вход в позицию должен быть когда значение индикатора ADX меньше 20. Все позиции закрываются в конце вечерней сессии. Из длинной позиции выход осуществляется, если значение индикатора CCI меньше -100, из короткой, если CCI больше 100. Стоп-лосс будет равен 500 пунктам. В качестве инструмента используется фьючерс на индекс РТС, таймфрейм – 15 минут.

Моделирование и оптимизация параметров алгоритма осуществляется в пакете Wealth Lab (Таблица 1).

Таблица 1. Тестирование и оптимизация

.png_04

Данные в таблице оптимизации отсортированы по параметру Net Profit, т.е. общая прибыль. Для выбора оптимальных параметров системы обратимся к 3D-диаграмме зависимости индикаторов и прибыли (Рис. 1).

.png_05

Рис 1. Зависимость параметров ADX, CCI и прибыли

Исходя из тестов, система имеет оптимальные параметры:

- если период индикатора ADX лежит в пределах 40-60

- если период индикатора CCI лежит в пределах 40-110.

Причем, доходность системы с изменением периода индикатора ССI, изменяется не значительно. Применим данные параметры для получения кривой equity и анализа просадки.

Данные в таблице оптимизации отсортированы по параметру Net Profit, т.е. общая прибыль. Для выбора оптимальных параметров системы обратимся к 3D-диаграмме зависимости индикаторов и прибыли (Рис. 2).

Исходя из тестов, система имеет оптимальные параметры:

- период индикатора ADX лежит в пределах 40-60;

- период индикатора CCI лежит в пределах 40-110.

Причем, доходность системы с изменением периода индикатора ССI, изменяется не значительно. Применим данные параметры для получения кривой equity и анализа просадки (Рис. 2, 3, 4).

.png_06

Рис. 2. Кривая доходности системы (на один контракт)

.png_07

Рис. 3. График просадки системы

.png_08

Рис. 3. График распределения прибыльных/убыточных сделок

Созданный алгоритм прогнозирования вполне эффективен и даёт положительную доходность, обгоняя индекс. Пакет Wealth Lab позволяет, используя язык C#, протестировать алгоритм, с помощью оптимизатора определить параметры, а встроенные функции построения графиков оценить работу алгоритма визуально. Использование методов поиска оптимального решения задачи подбора параметров, таких как полный перебор и метод Монте-Карло, позволяет получить необходимые данные для применения. Пакет Wealth Lab позволяет, используя язык C#, протестировать алгоритм, с помощью оптимизатора определить параметры, а встроенные функции построения графиков оценить работу алгоритма визуально.

Библиография
1. Милованов М.М. Применение рефлексивного анализа как основание для краткосрочного прогнозирования поведения финансовых рынков // Теоретическая и прикладная экономика. — 2015.-№ 1.-С.1-9. URL: http://e-notabene.ru/etc/article_14069.html
2. Милованов М.М. Прогнозирования поведения инструментов финансовых рынков с помощью рефлексивных процессов//Электронный научный журнал "Финансы и учет".-2014.-Выпуск 4(26) Октябрь-Декабрь. С. 21-23. [Электронный ресурс]. – Режим доступа: http://www.finance-and-accounting.ingnpublishing.com/
3. Милованов М.М. Применение технического анализа для исследования внутридневных трендов. Теплотехника и информатика в образовании, науке и производстве: сборник докладов IV Всероссийской научно-практической конференции студентов, аспирантов и молодых учёных (TИМ’2015) с международным участием, посвящённой 95-летию основания кафедры и университета (Екатеринбург, 26–27 марта 2015 г.). – Екатеринбург: УрФУ, 2015. – 264 с.
4. Милованов М.М. Информационные технологии. Электронный учебно-методический комплекс / Электрон. дан.-Новокузнецк: СибГИУ, 2014.:ил.-1 электронный DVD диск (DVD-ROM); № гос. регистрации 032140093
5. Милованов М.М. Применение рефлексивного анализа как основание для краткосрочного прогнозирования поведения финансовых рынков // Теоретическая и прикладная экономика. - 2015. - 1. - C. 1 - 9. DOI: 10.7256/2409-8647.2015.1.14069. URL: http://www.e-notabene.ru/etc/article_14069.html
6. Лабковская Р.Я., Козлов А.С., Пирожникова О.И., Коробейников А.Г. Моделирование динамики чувствительных элементов герконов систем управления // Кибернетика и программирование. - 2014. - 5. - C. 70 - 77. DOI: 10.7256/2306-4196.2014.5.13309. URL: http://www.e-notabene.ru/kp/article_13309.html
7. Г.С. Раснюк Технический анализ как инструмент принятия портфельных решений // Налоги и налогообложение. - 2013. - 3. - C. 228 - 234. DOI: 10.7256/1812-8688.2013.03.7.
8. Малашкевич И.А., Малашкевич В.Б. Эффективный алгоритм децимации данных // Кибернетика и программирование. - 2013. - 5. - C. 1 - 6. DOI: 10.7256/2306-4196.2013.5.9697. URL: http://www.e-notabene.ru/kp/article_9697.html
References
1. Milovanov M.M. Primenenie refleksivnogo analiza kak osnovanie dlya kratkosrochnogo prognozirovaniya povedeniya finansovykh rynkov // Teoreticheskaya i prikladnaya ekonomika. — 2015.-№ 1.-S.1-9. URL: http://e-notabene.ru/etc/article_14069.html
2. Milovanov M.M. Prognozirovaniya povedeniya instrumentov finansovykh rynkov s pomoshch'yu refleksivnykh protsessov//Elektronnyi nauchnyi zhurnal "Finansy i uchet".-2014.-Vypusk 4(26) Oktyabr'-Dekabr'. S. 21-23. [Elektronnyi resurs]. – Rezhim dostupa: http://www.finance-and-accounting.ingnpublishing.com/
3. Milovanov M.M. Primenenie tekhnicheskogo analiza dlya issledovaniya vnutridnevnykh trendov. Teplotekhnika i informatika v obrazovanii, nauke i proizvodstve: sbornik dokladov IV Vserossiiskoi nauchno-prakticheskoi konferentsii studentov, aspirantov i molodykh uchenykh (TIM’2015) s mezhdunarodnym uchastiem, posvyashchennoi 95-letiyu osnovaniya kafedry i universiteta (Ekaterinburg, 26–27 marta 2015 g.). – Ekaterinburg: UrFU, 2015. – 264 s.
4. Milovanov M.M. Informatsionnye tekhnologii. Elektronnyi uchebno-metodicheskii kompleks / Elektron. dan.-Novokuznetsk: SibGIU, 2014.:il.-1 elektronnyi DVD disk (DVD-ROM); № gos. registratsii 032140093
5. Milovanov M.M. Primenenie refleksivnogo analiza kak osnovanie dlya kratkosrochnogo prognozirovaniya povedeniya finansovykh rynkov // Teoreticheskaya i prikladnaya ekonomika. - 2015. - 1. - C. 1 - 9. DOI: 10.7256/2409-8647.2015.1.14069. URL: http://www.e-notabene.ru/etc/article_14069.html
6. Labkovskaya R.Ya., Kozlov A.S., Pirozhnikova O.I., Korobeinikov A.G. Modelirovanie dinamiki chuvstvitel'nykh elementov gerkonov sistem upravleniya // Kibernetika i programmirovanie. - 2014. - 5. - C. 70 - 77. DOI: 10.7256/2306-4196.2014.5.13309. URL: http://www.e-notabene.ru/kp/article_13309.html
7. G.S. Rasnyuk Tekhnicheskii analiz
kak instrument prinyatiya
portfel'nykh reshenii // Nalogi i nalogooblozhenie. - 2013. - 3. - C. 228 - 234. DOI: 10.7256/1812-8688.2013.03.7.

8. Malashkevich I.A., Malashkevich V.B. Effektivnyi algoritm detsimatsii dannykh // Kibernetika i programmirovanie. - 2013. - 5. - C. 1 - 6. DOI: 10.7256/2306-4196.2013.5.9697. URL: http://www.e-notabene.ru/kp/article_9697.html