Научная статья на тему 'ПРОГРАММНАЯ РЕАЛИЗАЦИЯ АЛГОРИТМА ФИЛЬТРАЦИИ ВРЕМЕННЫХ РЯДОВ ДЛЯ СОЗДАНИЯ ТОРГОВОГО БОТА'

ПРОГРАММНАЯ РЕАЛИЗАЦИЯ АЛГОРИТМА ФИЛЬТРАЦИИ ВРЕМЕННЫХ РЯДОВ ДЛЯ СОЗДАНИЯ ТОРГОВОГО БОТА Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
11
2
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
биржевые роботы / цифровая фильтрация / дигитализация биржевого трейдинга / системный анализ процессов обработки сигналов / приоритетные направления цифровой трансформации / торговые роботы / торговые БОТы. / stock exchange robots / digital filtering / digitalization of stock trading / system analysis of signal processing processes / priority areas of digital transformation / trading robots / trading BOTS.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — К В. Портнов

Статья посвящена разработке математического и алгоритмического обеспечения для торговых ботов на финансовых рынках с целью обеспечения автоматизации торговли на биржевых рынках и устранение эмоционального фактора при принятии решений. В качестве математического обеспечения выбраны механизмы цифровой фильтрации, позволяющие обеспечивать заданную вырезку области спектра входного сигнала или определенных частот для сглаживания незначительных (в контексте принятия решений) колебаний. Предложенные алгоритмы фильтрации нижних частот легли в основу создания программного фильтра, обрабатывающего временной ряд стоимости финансовых активов на биржах. Полученный фильтр используется для построения индикаторов разных порядков что позволяет использовать его при генерации торговых правил и сигналов в реверсивных или более сложных торговых системах. Реализованный программный фильтр(индикатор) используется для создания системы торговых правил, на основании которых производится синтез алгоритма функционирования торгового бота. В настоящей работе указанный индикатор программно реализован в системе Omega research на встроенном языке программирования, хотя и в перспективе планируется разработка самостоятельного торгового бота, реализованного посредством среды Lazarus IDE и использование API библиотек Meta Trader. Автором проведено экспериментальное оценивание использования реализованного алгоритма при проведении операций торговым алгоритмом торгового бота на исторических данных, представляющих собой временные ряды котировок различных финансовых активов. Указанное тестирование на разных финансовых инструментах проводилось автоматически с использованием встроенного функционала Omega Research, результаты которых приведены в статье.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

SOFTWARE IMPLEMENTATION OF A TIME SERIES FILTERING ALGORITHM FOR CREATING A TRADING BOT

The article is devoted to the development of mathematical and algorithmic support for trading bots in financial markets, with the aim of ensuring automation of trading in stock markets and eliminating the emotional factor in decision making. As mathematical support, digital filtering mechanisms were chosen to provide a specified cut of the spectral region of the input signal or certain frequencies to smooth out minor (in the context of decision-making) fluctuations. The proposed low-pass filtering algorithms formed the basis for the creation of a software filter that processes the time series of the value of financial assets on exchanges. The resulting filter is used to construct indicators of different orders, which allows it to be used when generating trading rules and signals in reverse or more complex trading systems. The implemented software filter (indicator) is used to create a system of trading rules on the basis of which the algorithm for the functioning of the trading bot is synthesized. In this work, this indicator is implemented programmatically in the Omega research system using a built-in programming language, although in the future it is planned to develop an independent trading bot implemented through the Lazarus IDE and use the Meta Trader API libraries. The author conducted an experimental evaluation of the use of the implemented algorithm when carrying out operations using the trading algorithm of a trading bot on historical data representing time series of quotes of various financial assets. The specified testing on various financial instruments was carried out automatically using the built-in functionality of Omega Research, the results of which are presented in the article.

Текст научной работы на тему «ПРОГРАММНАЯ РЕАЛИЗАЦИЯ АЛГОРИТМА ФИЛЬТРАЦИИ ВРЕМЕННЫХ РЯДОВ ДЛЯ СОЗДАНИЯ ТОРГОВОГО БОТА»

ПРОГРАММНАЯ РЕАЛИЗАЦИЯ АЛГОРИТМА ФИЛЬТРАЦИИ ВРЕМЕННЫХ РЯДОВ ДЛЯ СОЗДАНИЯ ТОРГОВОГО БОТА

К.В. Портнов, к.т.н., доцент, Самарский государственный технический университет, sk7@mail.ru.

УДК 004.9_

Аннотация. Статья посвящена разработке математического и алгоритмического обеспечения для торговых ботов на финансовых рынках с целью обеспечения автоматизации торговли на биржевых рынках и устранение эмоционального фактора при принятии решений. В качестве математического обеспечения выбраны механизмы цифровой фильтрации, позволяющие обеспечивать заданную вырезку области спектра входного сигнала или определенных частот для сглаживания незначительных (в контексте принятия решений) колебаний. Предложенные алгоритмы фильтрации нижних частот легли в основу создания программного фильтра, обрабатывающего временной ряд стоимости финансовых активов на биржах. Полученный фильтр используется для построения индикаторов разных порядков что позволяет использовать его при генерации торговых правил и сигналов в реверсивных или более сложных торговых системах.

Реализованный программный фильтр(индикатор) используется для создания системы торговых правил, на основании которых производится синтез алгоритма функционирования торгового бота. В настоящей работе указанный индикатор программно реализован в системе Omega research на встроенном языке программирования, хотя и в перспективе планируется разработка самостоятельного торгового бота, реализованного посредством среды Lazarus IDE и использование API библиотек Meta Trader.

Автором проведено экспериментальное оценивание использования реализованного алгоритма при проведении операций торговым алгоритмом торгового бота на исторических данных, представляющих собой временные ряды котировок различных финансовых активов. Указанное тестирование на разных финансовых инструментах проводилось автоматически с использованием встроенного функционала Omega Research, результаты которых приведены в статье.

Ключевые слова: биржевые роботы; цифровая фильтрация; дигитализация биржевого трейдинга; системный анализ процессов обработки сигналов; приоритетные направления цифровой трансформации; торговые роботы; торговые БОТы.

SOFTWARE IMPLEMENTATION OF A TIME SERIES FILTERING ALGORITHM FOR CREATING A TRADING BOT.

K.V. Portnov, candidate of technical science, associate professor, Samara State Technical University.

Annotation. The article is devoted to the development of mathematical and algorithmic support for trading bots in financial markets, with the aim of ensuring automation of trading in stock markets and eliminating the emotional factor in decision making. As mathematical support, digital filtering mechanisms were chosen to provide a specified cut of the spectral region of the input signal or certain frequencies to smooth out minor (in the context of decision-making) fluctuations. The proposed low-pass filtering

algorithms formed the basis for the creation of a software filter that processes the time series of the value of financial assets on exchanges. The resulting filter is used to construct indicators of different orders, which allows it to be used when generating trading rules and signals in reverse or more complex trading systems.

The implemented software filter (indicator) is used to create a system of trading rules on the basis of which the algorithm for the functioning of the trading bot is synthesized. In this work, this indicator is implemented programmatically in the Omega research system using a built-in programming language, although in the future it is planned to develop an independent trading bot implemented through the Lazarus IDE and use the Meta Trader API libraries.

The author conducted an experimental evaluation of the use of the implemented algorithm when carrying out operations using the trading algorithm of a trading bot on historical data representing time series of quotes of various financial assets. The specified testing on various financial instruments was carried out automatically using the built-in functionality of Omega Research, the results of which are presented in the article.

Keywords: stock exchange robots; digital filtering, digitalization of stock trading; system analysis of signal processing processes; priority areas of digital transformation; trading robots; trading BOTS.

Введение

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

Разработка программного обеспечения сводится к двум частям - реализации алгоритма цифровой фильтрации, реализованного в форме самостоятельного временного ряда построенного на основе временного ряда финансового актива, и формированию на основе нескольких фильтров с разными параметрами сигналов принятия решений. Таким образом мы получаем систему с управляемыми параметрами.

В качестве математического аппарата были выбраны методы математико-статистического моделирования, а именно методы цифровой фильтрации сигналов. Под фильтром будем понимать произвольную систему обработки дискретного сигнала. Назначение фильтра - это извлечение или вырезка области спектра входного сигнала или определенной частоты.

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

Синтез алгоритма фильтрации

Временные ряды, которые интересуют нас в первую очередь - это динамика изменения курсов валют и акций. Обычно временной ряд содержит значения через равные промежутки времени. Этот промежуток времени называют периодом съема данных. Для курсов это может быть минута, час, день или даже месяц. Вообще говоря, динамику курсов принято характеризовать пятью величинами: цена открытия периода (Open), наибольшая цена за период (High), наименьшая цена за период (Low), цена закрытия периода (Close), объем операций за период, который может быть выражен в разных единицах, но в любом случае он характеризует активность рынка (Volume). Каждой из этих величин соответствует свой временной ряд, и даже более того, для каждой величины может быть несколько временных рядов в зависимости от выбранного периода съема данных.

Цифровые фильтры предназначены для обработки (фильтрации) сигналов, представленных в виде временных рядов. Одним из наиболее простых и полезных рекурсивных цифровых фильтров является фильтр Баттерворта. В данной работе остановимся на применении фильтра Баттерворта в трейдинге и методику построения торговой стратегии на созданных индикаторах. Широко известны два типа цифровых фильтров Баттерворта: синусный фильтр Баттерворда с базовым фильтром низких частот и тангенсный фильтр Баттерворда с базовым фильтром низких частот. По сравнению со своим аналоговым прототипом, синусный фильтр Баттерворда имеет более гладкие, а тангенсный фильтр - более крутые переходы от полосы пропускания к полосе поглощения фильтра.

В качестве базисного возьмем фильтр Баттерворта порядка 2p с передаточной функцией:

где: S - оператор Лапласа.

Как видно из формулы 1, этот фильтр представляет собой p последовательно включенных колебательных звеньев.

Амплитудо-частотные и фазочастотные характеристики этого фильтра определяются по формулам 2:

ч1+х4Р

02р(*) = -х_х24Р

0 < х < 1

Ж

02Р(1)=Рт (2)

2

02р(*) = Р7 + !£=1агс^

2 2ХС05--—

X > 1 02Р(Х ^ ОТ) = ря

Здесь х - относительная частота; ю - круговая частота. Алгоритм построения цифрового ФНЧ

!2р — порядок фильтра А — шаг дискретизации по времени

— верхняя граничная частота фильтра

Системная функция цифрового ФНЧ получается из соотношения 1 путем замены параметра, указанного в формуле 3:

1 1—г-1

^ = (3)

где: z-1 - оператор запаздывания на один шаг дискретизации, в результате получаем вид передаточной функции, указанный в формуле 4:

х2-1

V.

W2P(Z) = ПРк = 1 —

Ck(i+z-1)2

X1(k)z-1+X2(k)z-2 '

(4)

Параметры фильтра вычисляются по формулам 5:

'К(Х) =

Л2(к) =

2 cos А-ш„

1 + cos(2k 1^n-sin А-ш„

1—cos-

4р (2k-1)n 4р

sinA-Шг

1+cos(2k 11>n-sinA-MT

> к = 1,p

sin

4p

2Лшв 2_

Ck = (2k-1)n . л

1+cos--—sin А-шв

V 4p в

1—Л1(к)+Л2(к) 4

(5)

Частотные характеристики фильтра могут быть определены по соотношениям (2), если в них положить следующие значение х указанное формулой 6:

. л-ш

_ tg—

(6)

где, 0 < ш < -.

&

Алгоритм фильтрации временного ряда Хт (да=0, 1, ...) описывается следующим рекурсивным соотношением 7:

Yo(m) = хт

Yk(m) = Ai(k) - Yk(m - l) - ^(к) - Yk(m -2) +

+Ck[Yk—i(rn) + 2Yk—i(m -1) + Yk—i(m - 2)}

к = 1,pm = 0, 1, . . - рекурсия

Ym = Yp(m) - выходной сигнал фильтра

(7)

Вычисления идут при условии, что Yv(q)=0 при ^<0.

Для примера приводим алгоритм фильтрации для Р=3 (шестой порядок фильтра). Он отражен в выражении 8:

Yi(rn) = Ai(1)Yi(m - 1) - Ы1Шт -2) + Ci[Xm + 2Xm—i + Хт—2}

Y2(m) = А^Шт - 1) - ^(¿^rn -2) + С2Шт) + 2Y1(m -1) + Yi(m- 2)}

Y3(m) = Ai(3)Y3(m - 1) - A2(3)Y3(m -2) + C^m) + 2Y2(m -1) + Y2(m- 2)},

(8)

Программный индикатор реализован с помощью языка, встроенного в систему Omega Research:

{функция my_but_filter_N - ФНЧ Баттерворта}

inputs: price(numeric), p(numeric),T1(numeric);{цена, порядок фильтра, период отсечки}

vars: k(0),m(0),cow(0),siw(0),chet(true),CC(0),lam(0),tg(0); arrays: cok[30](0),la1[30](0),la2[30](0),ck[30](0),y[30,3](close); cow=cosine(360/T1); siw=sine(360/T1);

j

>

if floor(p/2)*2=p then chet=true

else chet=false; {проверка на четность порядка фильтра}

if chet then begin {если четный порядок, то...}

y[0,0]=price;

for k=1 to p begin

cok[k]=cosine((2*k-1)*180/4/p);

end;

end

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

else begin {если нечетный порядок, то... }

tg=tangent(l80/T1);

lam=(1 -tg)/( 1 +tg); CC=(1-lam)/2;

y[0,0]=lam*y[0,1]+CC*(price+price[1]);

for k=1 to p begin

cok[k]=cosine(k*180/(2*p+1));

end;

end;

{Общая часть} for k=1 to p begin la1[k] = 2*cow/(1+cok[k]*siw); la2[k] = (1 -cok[k]*siw)/(1+cok[k]*siw); ck[k] = (1-la1[k]+la2[k])/4; end;

{расчет выходного сигнала} for k=1 to p begin

y[k,0]=la1[k]*y[k,1]-la2[k]*y[k,2]+ck[k]*(y[k-1,0]+2*y[k-1,1]+y[k-1,2]); end;

{выход функции равен...} my_but_filter_N=y[p,0];

{сдвигаем массив значений матрицы на 1 столбец - «забываем» самую старую историю}

for k=0 to p begin

for m=1 downto 0 begin

y[k,m+1]=y[k,m];

end;

end;

{текст индикатора butt_filer_N (без комментариев)}

inputs: price(c),p(2), T1(10),clrUp(red),clrDown(blue),clrNeutral(green);

value 1=my_but_filter_N(price,p, T1);

value2=my_but_filter_N(price,p, T1)[1];

if valuel > value2 thenplot1(value1,"",clrUp);

if valuel < value2 then plot1(value1,"" ,clrDown);

if valuel = value2 then plot1(value1,"",clrNeutral);

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

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

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

Архитектура торгового робота схематично показана на рис. 1.

Рисунок 1

Этапы разработки торговой системы

Методы современного технического анализа позволяют существенно уменьшить риски трейдинга. Весь анализ может быть выполнен с использованием современных систем технического анализа Omega Research, Metastock и Meta Trader.

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

Более существенными причинами автоматизации трейдинга является проблема принятия решений. Компьютер, который на первых этапах использовался для быстрого поиска информации, для графической визуализации различных данных, для вычисления различных вспомогательных функций и т.п., теперь должен все больше брать на себя расчеты по выработке окончательных рекомендаций по принятию решений. Все этапы принятия решений, которые могут быть формализованы и которые не требуют выбора человека, необходимо передать компьютеру. При создании соответствующей программы человек получит возможность освободиться от рутинных расчетов и сконцентрироваться на проблеме выбора факторов, которые только он и может задавать. Разберем более подробно проблематику разработки подобных механических систем в следующей главе.

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

141

Research Tradestation. Пересечение фильтров 2-го и 3-го порядка и периодом отсечки в 1 час изображено на рис. 2

Рисунок 2

Система носит реверсивный характер, т.е. сигналом на покупку и продажу служит пересечение двух фильтров (индикаторов). Хотя реверсивные системы на практике часто дают плохой результат, в данной работе хотим показать, что их стоит применять для торговли по тренду и применять либо для «бычьей», либо для «медвежьей» торговли. Для этого нами отдельно рассматриваются результаты общих торгов и результаты по коротким и длинным позициям.

Апробация торговой системы на исторических данных

Так как объем исторических данных достаточно велик, а расчеты, как правило, достаточно сложны, то трудно себе представить тестирование торговой системы без использования программных средств. В связи с этим встает необходимость создания программного продукта в виде клиентского приложения, позволяющего не только производить расчеты с историческими и текущими данными и отображать их в привычном для трейдера виде, но и получать котировки через сеть интернет и производить торговые операции на рынке FOREX. Важная составляющая будет состоять в изучении предметной области и выборе эффективной торговой системы.

Экспериментальное исследование эффективности применения разработанного фильтра, лежащего в основе роботизированный торговой системы, проводилось на исторических данных, представляющих собой временные ряды котировок разных финансовых инструментов, соответствующих валютных пар за период 2002-2022 гг.

Для проведения исследования эффективности торговой системы был использован пакет Omega Research Trade Station 2000, позволяющий в автоматическом режиме проводить тестирование с изначально установленными

параметрами (объем капитала, леверидж, порядки фильтров и т.п.), результаты которых приведены ниже.

В качестве исходных данных брались следующие величины:

• Инструмент: JPY A0-FX/ CHF A0-FX/ EUR A0-FX/GBP A0-FX

• Размер лота: 100 000

• Леверидж: 1/100

• Период: 60 мин

• Начальная дата: 15.01.02

• Конечная дата: 28.05.22

В ходе тестирования были построены графики динамики капитала. Динамика отражает результаты торгов по коротким и длинным позициям по каждой валютной паре.

Динамика капитала при тестовой торговле EUR/USD с помощью разработанной нами механической торговой системы изображена на рис. 3.

120000

110000

J\j i

■J+w

/Л/

200 300 400 500

Trade Number

Рисунок 3

Рисунок 4

Динамика капитала при тестовой торговле GBP с помощью разработанной нами механической торговой системы изображена на рис. 4

Динамика капитала при тестовой торговле USD/CHF с помощью разработанной нами механической торговой системы изображена на рис. 5

Рисунок 5

Динамика капитала при тестовой торговле ЗРТ с помощью разработанной нами механической торговой системы изображена на рис. 6.

101600 101400 101200 101000 в 100800 § 100600 100400 100200 100000 99800

.................X..Ä1.....

д р Ъ

К щ • ......................................

[1

..........ж ш

i Т

S . nS.!U> Л J

1

100

200 300

Trade Number

400

500

Рисунок 6

Детализированные финансовые результаты экспериментальных операций, проводимых на исторических данных, в целом отражены в табл. 1., а результаты по «длинным» и «коротким» позициям в табл. 2 и 3 соответственно.

Таблица 1.

Показатель ЕиЕ/иЗВ изв/ст ШВМРУ авршв

Общее количество сделок 508 514 440 658

Прибыльные сделки 204 193 162 284

Убыточные сделки 304 321 278 374

Процент прибыльных сделок 40,16% 37,55% 36,81% 43,16%

Наибольшая прибыль $2721,12 $260,62 $317,25 $171,34

Наибольший убыток $850,82 $74,03 $88,20 $96,26

Средняя прибыль $428,27 $42,97 $46,15 $24,12

Средний убыток $216,99 $22,12 $22,49 $17,99

Коэффициент среднего выигрыша/убытка 1,97 1,94 2,05 1,34

Валовая прибыль $87366,18 $8292,83 $7475,79 $6848,94

Валовый убыток $65965,62 $7099,38 $6251,38 $6727,86

Чистая прибыль $21400,56 $1193,45 $1224,40 $121,08

Прибыльность стратегии 21,4% 1,19345% 1,22% 0,122%

Прибыльность (при использовании маржи) 2140,4% 119,345% 122% 12,2%

Таблица 2.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Показатель ЕиЯ/иЗВ иЗВ/СНЕ ШВМРУ авршв

Общее количество сделок 239 246 235 329

Прибыльные сделки 106 87 85 150

Убыточные сделки 133 159 150 179

Процент прибыльных сделок 44,35% 35,37% 36,17% 45,59%

Наибольшая прибыль $2721,12 $260,62 $252,45 $171,34

Наибольший убыток $850,82 $74,03 $67,20 $51,29

Средняя прибыль $520,11 $40,99 $40,20 $21,41

Средний убыток $227,70 $23,69 $20,80 $14,64

Коэффициент среднего выигрыша/убытка 2,28 1,73 1,93 1,46

Валовая прибыль $55131,32 $3566,39 $3416,94 $3211,16

Валовый убыток $30283,94 $3766,97 $3122,05 $2621,71

Чистая прибыль $24847,39 $-200,58 $294,89 $589,45

Прибыльность стратегии 24,85% -0,2% 0,29489% 0,5895%

Прибыльность (при использовании маржи) 2485,4% 20% 29,489% 59%

Таблица 3.

Показатель ЕиЯ/иЗВ №В/СНР Швмру авршв

Общее количество сделок 269 268 205 329

Прибыльные сделки 98 106 77 134

Показатель EUR/USD USD/CHF USD/JPY GBP/USD

Убыточные сделки 171 162 128 195

Процент прибыльных сделок 36,43% 39,55% 37,56% 40,73%

Наибольшая прибыль $2210,15 $233,60 $317,25 $168,67

Наибольший убыток $783,78 $63,29 $88,20 $96,26

Средняя прибыль $328,93 $44,59 $52,71 $27,15

Средний убыток $208,66 $20,57 $24,45 $21,06

Коэффициент среднего выигрыша/убытка 1,58 2,17 2,16 1,29

Валовая прибыль $32234,87 $4726,44 $4058,85 $3637,78

Валовый убыток $35681,71 $3332,41 $3129,33 $4106,15

Чистая прибыль -$3446,84 $1394,04 $929,52 $-468,38

Прибыльность стратегии -3,4465% 1,3940% 0,9295% -0,464%

Прибыльность (при использовании маржи) -344,65% 139,40% 92,95% -46,4%

В результате тестирования выяснилось, что наилучшие результаты торгов были получены для EUR/USD и составляет 21,4%, но т.к. на Форексе используется кредитное плечо (леверидж) 1/100, то прибыльность маржинальной торговли составляет 2140%. По остальным валютам были получены более плохие результаты. Это вполне нормальное явление, т.к. для каждой валюты следует подбирать индивидуальные комбинации порядков фильтра (индикатора), вследствие их характерных особенностей. Автоматизированный подбор порядков реализуется в специальных программных пакетах, позволяющих методом перебора добиться наилучшего финансового результата за данный временной период. Данную оптимизацию позволяют производить такие пакеты как Omega Research Trade Station 2000i. В разработанной нами автоматизированной информационной системе в дальнейшем планируется сделать возможность тестирования механических торговых систем и их оптимизацию.

Стоит отметить, что результаты тестирования будут отличаться от торговли в реальных условиях т.к. невозможно учесть психологическое состояние трейдера, а также эффекта проскальзывания. Необходимо учитывать и тот фактор, что сигнал механической торговой системы при тестировании формируется после завершения временного периода, на котором произошло выполнение условия входа в рынок, проще говоря, сигнал появляется после формирования свечи, на которой произошло выполнение условия. Следующий немаловажный фактор то, что торговля при тестировании ведется без установки Stop-loss и take-profit, и это ведет к достаточно существенной потенциальной возможности просадки капитала. Ну и последним неучтенным фактором является спрэд, который в реальных условиях тоже может повлиять на результаты торговли.

При тестировании лучшие результаты были получены по тем позициям, в направлении которой шел рынок. Например, результаты коротких позиций по CHF были намного лучше, чем по длинным и составили 139,5% прироста капитала. По длинным позициям был получен отрицательный результат, что снизило прибыльность механической торговой системы в целом.

Таким образом, мы рекомендуем использовать индикатор для торговли только по тренду в направлении рынка. Это позволит увеличить прибыльность и прирост капитала.

Заключение

Разработан алгоритм цифровой фильтрации для специализировнных программных комплексов типа Meta Stock, Omega Research, Meta Trader, обеспечивающий построение трендового индикатора на основе низкочастотной фильтрации для обеспечения поддержки принятия решения при операциях финансовых рынках.

Проведено исследование эффективности принятия решения на основе реализованных индикаторов на исторических данных, которое показало состоятельность данного метода в биржевом техническом анализе.

Разработанное программное обеспечение предназначено для работы биржевых трейдеров на валютном рынке Форекс.

Автоматизированная система реализована полностью и готова к внедрению. Для повышения эффективности рекомендуется произвести предварительную настройку периодов группы индикаторов Баттерворта для текущего рынка и для каждой валютной пары.

Литература

1. Портнов К.В. Анализ цифровой трансформации бизнес-процессов // Актуальные проблемы общества, экономики и права в контексте глобальных вызовов: Сборник материалов X Международной научно-практической конференции, Москва, 17 мая 2022 года / Редколлегия: Л.К. Гуриева [и др.]. - Москва: Общество с ограниченной ответственностью «ИРОК», ИП Овчинников Михаил Артурович (Типография Алеф), 2022. - С. 49-58. - DOI 10.34755/IROK.2022.92.13.091. - EDN EJPTQW.

2. Портнов К.В. Генетические алгоритмы и поиск эффективных порядков индикаторов в биржевой торговой стратегии на основе пересечения трех скользящих средних // Вестник Самарского государственного технического университета. Серия: Технические науки, 2005. - № 32. - С. 72-76. - EDN JWUXKZ.

3. Портнов К.В. Информационные технологии в оценке показателя лояльности клиентов // В мире научных открытий, 2011. - № 3 (15). - С. 254-258. - EDN OCSJNX.

4. Смагина З.А. Технология интернет вещей и ее влияние на современную экономику // Теоретические и прикладные вопросы экономики, управления и образования: Сборник статей II Международной научно-практической конференции. В 2-х томах, Пенза, 15-16 июня 2021 года. Том II. - Пенза: Пензенский государственный аграрный университет, 2021. - С. 182-186. - EDN AJTHBC.

5. Портнов К.В. Анализ задачи оценки лояльности в деятельности компаний в сфере профессиональных услуг // Проблемы развития предприятий: теория и практика, 2020. - № 1-2. - С. 241-244. - EDN HDSWOD.

6. Свидетельство о государственной регистрации программы для ЭВМ № 2023664735 Российская Федерация. Система учета товаров на складе интернет-магазина: № 2023660391: заявл. 24.05.2023: опубл. 06.07.2023 / К.В. Портнов; заявитель Федеральное государственное бюджетное образовательное учреждение высшего образования «Самарский государственный технический университет». -EDN VFHCBC.

7. Латушкина Т.С. Исследование возможностей интернет-продвижения и настройка рекламной компании // Московский экономический журнал, 2023. - Т.

8. - № 5. - DOI 10.55186/2413046X_2023_8_5_280. - EDN RFPBDO.

8. Сахбиева А.И., Калякина И.М., Косников С.Н., Латушкина Т.С., Майорова И.А. Цифровизация экономика и обеспечение безопасности данных // Московский

экономический журнал, 2021. - № 8. URL: https://qje.su/ekonomicheskaya-teoriya/moskovskij -ekonomicheskij -zhurnal-8-2021-28

9. Иноземцев В.Л. На рубеже эпох. Экономические тенденции и их неэкономические следствия [Текст]. - М.: Экономика, 2003. - 730 с.

10. Латушкина Т.С., Харитонова Е.А., Майорова И.А. Анализ подходов к ESG на примере металлообрабатывающего предприятия // Экономика и предпринимательство, 2022. - № 7 (144). - С. 1059-1064.

11. Латушкина Т.С., Майорова И.А. Использование и применение JAVASCRIPT-фреймворков (REACT, ANGULAR, VUE.JS) для разработки WEB-приложений // Экономика и предпринимательство, 2023. - № 9 (158). - С. 1374-1376.

12. Портнов К.В. Актуальные проблемы и задачи автоматизированных систем в сфере ЖКХ // Журнал монетарной экономики и менеджмента, 2024. - № 2. - С. 230236. - DOI 10.26118/2782-4586.2024.35.72.033. - EDN AEQRFJ.

13. Портнов К.В. Разработка информационной системы на основе многофакторной логистической регрессии // Информационные технологии. Радиоэлектроника. Телекоммуникации, 2012. - № 2-3. - С. 129-133. - EDN PEDEUX.

14. Портнов К.В. Анализ оценки неопределенности инвестиционного портфеля // Математическое моделирование и краевые задачи: Труды Третьей Всероссийской научной конференции, Самара, 29-31 мая 2006 года / Редколлегия: В.П. Радченко (ответственный редактор), Э.Я. Рапопорт, Е.Н. Огородников, М.Н. Саушкин (ответственный секретарь). Том Часть 4. - Самара: Самарский государственный технический университет, 2006. - С. 80-82. - EDN TGOHNF.

i Надоели баннеры? Вы всегда можете отключить рекламу.