Назад в библиотеку

Топология торгового советника FOREX, основанного на нечеткой логике

Авторы: David A. Oyemade, Godspower O. Ekuobase, Fidelis O. Chete
Перевод: Д.А. Домащенко
Источник: Proceedings of the International Conference on Software Engineering and Intelligent Systems 2010 (SEIS 2010), July 5th-9th, Ota, Nigeria, Vol 1, p. 215-228

Аннотация

David A. Oyemade, Godspower O. Ekuobase, Fidelis O. Chete, Топология торгового советника FOREX, основанного на нечеткой логике. Валютный рынок FOREX задействует более 1,8 триллионов USD в качестве дневного торгового объема. Он является крупнейшим финансовым рынком в мире и до сих пор считается, одной из самых сложных областей исследования. В этой статье мы представляем топологию советника, который служит в качестве робота для торговли иностранной валютой с применением нечеткой логики. Наши результаты показывают, что использование нечеткой логики в качестве основы для работы советника способно дать до 80% следующих подряд прибыльных сделок. Это указывает на то, что разработка экспертов, основанных на этой топологии, которые могли бы достичь более высокого процента прибыльных сделок, стоит затраченных усилий. Ключевые слова: обмен валют, торговый советник, нечеткая логика

1 Введение

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

Изменение финансовых временных рядов, особенно на валютном рынке, характеризуется нелинейным и нестационарным поведением и, как было отмечено во многих исследованиях до этого, большинство финансовых рынков не являются предсказуемыми и следуют гипотезе случайного распределения. Были предприняты многочисленные попытки взломать коды финансовых рынков, особенно FOREX, но, к сожалению, ни одна из них не преуспела в достаточной мере [1]. Нечеткость, неопределенность и колебание цен, используемых для прогнозирования курса валют, делают применение нечеткой логики подходящей для торговли иностранной валютой. Тем не менее, лучше всего осуществлять ее с помощью торгового советника, который заменяет или оказывает поддержку ручной торговле.

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

Данная статья организована следующим образом. В разделе 2 дается обоснование валютного рынка FOREX. Мы описываем связанные работы в разделе 3. Раздел 4 представляет собой обзор нечеткой логики; ее применение к валютному рынку описывается в разделе 5. Наконец, в разделе 6, 7.1 и 7.2 приводятся тесты и результаты, будущая работа/рекомендации по улучшению и заключения соответственно.

2 Обоснование

Валютный рынок FOREX является международным финансовым рынком, где деньги свободно продаются и покупаются, и он был основан в 1970 году.

Валюта продается в парах, и каждая валюта имеет назначенный символ. Например, JPY является символом, закрепленным за японской Йеной, для английских фунтов стерлингов это GBP, для Евро это EUR, а для швейцарского Франка это CHF. Существуют четыре термина, связанных с маркерами валюты, а именно: максимум, минимум, открытие и закрытие. Максимум и минимум указывают наибольшую и наименьшую торговые цены, в то время как открытие и закрытие указывают цены, официально зафиксированные в назначенный период как цены обмена. Рост курса между валютной парой (GBP/USD) означает, что первая названная валюта укрепилась по отношению ко второй, и именно поэтому, когда кто-то продает валюту по курсу, он продает первую валюту в названии пары и покупает вторую [1].

Рынок Foreign Exchange (FOREX или FX) связан с такими терминами, как спред (котировка валюты, полученная от дилера или брокера), размер лота (количество единиц валюты, предназначенных для торговли, где каждый лот стоит 100 000 единиц базовой валюты) и пункты (наименьшая единица, в которой цена валюты котируется или последний десятичный знак валюты). Ценой Ask является цена, по которой брокер FOREX готов продать трейдеру валюту. Ценой Bid является цена, по которой брокер готов купить валюту у трейдера. Тик это событие, которое характеризуется новой ценой символа в какой-то момент. «Длинная позиция» это еще один термин при покупке, в то время как «короткая позиция» является эквивалентом термина для «продажи» с точки зрения трейдера.

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

Торговый советник (Expert Advisor, EA) является программой написанной на языке Meta Quote Language (MQL) и вызываемой клиентским терминалом для исполнения на каждом тике. Основной целью эксперта является программное управление торговлей.

Три популярных типа графиков, используемых для моделирования интерфейсов платформы FOREX это гистограмма, линейный график и свечной график. Советник, представленный в данной статье манипулирует данными финансовых временных рядов на валютном рынке FOREX, используя свойства графиков языка MQL.

3 Связанные работы

Развитие Интернета привлекло внимание экономистов и трейдеров к предсказанию финансовых рынков.

Emam [1] показал, что искусственные нейронные сети (ИНС) могут быть использованы для прогнозирования рынка FOREX. Тем не менее, он отметил, что построить успешную модель нейронной сети для прогнозирования рынка FOREX не просто из-за влияния различных факторов, таких как политические события, которые имеют место в течение определенного периода времени; такие политические кризисы случаются внезапно и цены падают быстро, а иногда скачок спрэда между ценой покупки и продажи составляет от 5 до 100 пунктов. При обмене иностранной валюты поток данных, количество транзакций в реальном времени, как правило, очень большой и имеет высокую плотность распределения [7]. Кроме того, ИНС не будет давать хороший результат без качественной предварительной подготовки данных, выбора входов, выбора переменных, алгоритмов обучения и предопределенной модели для проверки.

Slany предложил самоадаптирующуюся архитектуру для прогнозирования рынка FOREX с использованием генетического программирования (ГП) для представления предсказаний. Целью системы является разработка и адаптация простых предсказаний, которые могут быть использованы либо самой системой, либо быть «вручную» использованы трейдером-человеческом. Тем не менее, эта система имеет существенный недостаток – высокое соотношение ошибочно предсказанных изменений пунктов [13].

Wedding и CIO предложили гибридную модель сетей, основанных на радиальных функциях (RBF) и модели авторегрессии скользящего среднего (ARMA) [15]. Эта технология применяет комбинацию моделей.

Kablan расширил адаптивную нейро-нечеткую систему, чтобы создать экспертную систему, которая способна использовать нечеткие рассуждения в сочетании с возможностями распознавания нейронных сетей, которые будут использоваться в финансовом прогнозировании и торговле. Однако это еще один пример гибридной системы [5].

Проект Penn-Lehman Automated Trading (PLAT) является обширным исследованием генетических алгоритмов и стратегий для автоматической торговли на финансовых рынках. Subramanian и др. представили результаты экспериментов, проведенных в рамках этого проекта, и показали, что автономные агенты могут достичь последовательной прибыльности в различных рыночных условиях, способами, которые являются конкурентоспособнее человека. Они также выявили качественные характеристики стохастической динамики, которые можно использовать, чтобы улучшить производительность этих агентов [14]. Конечно, данные эксперименты были ограничены фондовым рынком.

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

4 Обзор нечеткой логики

Нечеткая логика является одной из форм многозначной логики, полученной из теории нечетких множеств, и основана на рассуждениях, что решение является приблизительным, а не точным. В отличие от «четкой логики», где двоичные наборы используют двоичную логику, нечеткие логические переменные могут принимать значения истинности, которые колеблются между 0 и 1 и не ограничены двумя значениями истинности классической логики высказываний [10]. Нечеткая логика является одной из форм мягких вычислений, которые имитируют принятие решения человеком. В отличие от классической теории множеств, где есть четкие границы, нечеткая система допускает неточности и гибкость в принятии решений системы.

Нечеткая логика разрешает манипуляции и использование неполных данных или данных с долей неопределенности [16, 2].

Два термина, которые обычно связывают с нечеткой логикой: нечеткое множество и нечеткие числа.

Нечеткое множество может быть представлено уравнением (1). Если X является универсумом рассуждения (все возможные значения для какой-либо функции в рамках рассматриваемой системы) и его элементы обозначены x, то нечеткое множество F в X определяется как множество упорядоченных пар.

F = {x, μ F (x) | x ∈ F} (1)

μ F (x) называется функцией принадлежности (Membership Function или MF) элемента x в F и с нечеткой логикой F может быть как полностью истинным, как в традиционной теории множеств, когда μ=1, или ложным, когда μ=0, или частично истинным и ложным, когда 0<μ<1 [5].

Нечеткое число есть величина, значение которой неопределенно, как и не является точным, как в случае обычных однозначных чисел. Нечеткие числа способны описывать неопределенные данные. Любое нечеткое число может рассматриваться как функция, называемая функцией принадлежности, и, как правило, задаваемой через множество действительных чисел, либо через диапазон положительных чисел, лежащих на отрезке [0,1]. Каждое численное значение домена назначается определенному значению, где 0 представляет наименьшее возможное значение функции принадлежности, в то время как наибольшее возможное значение равно 1. Функция принадлежности возрастает по направлению к среднему и уменьшается от него к максимуму. Нечеткое число может быть трех типов: треугольное нечеткое число, трапециевидное нечеткое число, и в колоколовидное нечеткое число. Три кривые показаны на рисунке 1 [8].

Нечеткие числа на самом деле изображают реальный мир, который редко оперирует однозначными числами [10]. Например, во время езды при оживленном движении, где ограничение скорости составляет 50 км/ч, существует множество факторов, которые сделают фактическое колебание скорости около 50 км/час.

Рисунок 1: Функция принадлежности

Рисунок 1: Функция принадлежности

5 Нечеткая логика и рынок FOREX

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

На рынке FOREX цены и котировки могут либо возрастать, либо понижаться. Вы либо получаете прибыль, либо убыток. Трейдер либо покупает, либо продает, он либо открывает длинную, либо короткую позицию. Торговая позиция может быть либо открыта, либо закрыта. Брокеры FOREX предоставляют либо цену Bid, либо цену Ask.

Следовательно, переменные FOREX, идентифицируемые нечеткими множествами, это: максимальная цена Bid, минимальная цена Bid, максимальная цена Ask, минимальная цена Ask, высокие потери, низкие потери, высокая прибыль и низкая прибыль. Различные факторы влияют на положение функции принадлежности между прибылью и ее отсутствием, а также между убытками и их отсутствием. Эти факторы, какими незначительными бы они ни были, должны быть формализованы некоторой программируемой функцией, чтобы свести к минимуму убытки или максимизировать прибыль. В течение периода, цены могут колебаться, накапливаться, увеличиваться или уменьшаться постепенно. Разрабатываемые функции должны учитывать эти колебания, накопления и изменения цен.

Теория нечетких множеств определяет нечеткие операторы на множествах нечетких чисел. Проблема применения данного аппарата заключается в том, что соответствующий нечеткий оператор не известен. По этой причине, нечеткая логика обычно использует лингвистические правила и конструкции ЕСЛИ-ТО, которые эквивалентны, например, нечетким ассоциативным матрицам. Операторы И, ИЛИ, НЕ и Булева логика также применяются в нечеткой логике. Оператор ИНАЧЕ не используется. На рисунке 2 показано нечеткое множество и функции принадлежности для разработанной топологии эксперта.

Рисунок 2: Нечеткое множество и функция принадлежности торгового советника

Рисунок 2: Нечеткое множество и функция принадлежности торгового советника

Фрагмент торгового советника, реализованного на основе нечеткой логики, в Meta Quote Language (MQL) 4, приведен ниже. Советник использует две системы, а именно: System5A и System5B. Первый переводит торговлю в направление тренда рынка, а второй переводит торговлю в противоположное направление. dBysPip5M и dSlsPip5M это двойные типизированные массивы лингвистических переменных, изначально объявляемые и инициализируемые, используя функции временных рядов языка MQL4. Они означают BuysPips и SellsPips на 5-ти минутном торговом периоде. Переменная b_f_factor расшифровывается как брокер-фактор; она объявляется внешним ключевым словом и может быть глобально установлена значением 1 или 10. Целью торгового советника является получение прибыли в 5 пунктов. Таким образом, число 3, по сравнению с 5, которое является уровнем прибыли, идентифицирует себя с необходимым нам нечетким числом, которое, кстати, в данном случае является числом Фибоначчи. Оно относится к уровню принадлежности 1, отвечающей за справедливую прибыль. Значение 3,8 пунктов относится к Справедливой со степенью принадлежности 0,6 и относится к Умеренной со степенью принадлежности 0,4, как показано на рисунке 2. Пользовательская функция FnOpenTrade, принимающая шесть аргументов, используется для размещения торгового ордера на сервере. Торговый советник был разработан для краткосрочной торговли, и рассчитан на получение прибыли в обоих направлениях торговли.

Алгоритм размещения торговых ордеров приведен ниже.

Алгоритм размещения ордеров

  1. Определите и захватите входы, которые будут представляться нечетким множеством, разделив четыре последних бара котировок спроса и предложения на два различных 5-ти минутных массива, таких как:
  2. 5MinutesBuys[1], 5MinutesBuysPis[2], 5MinutesBuysPip[3], 5MinutesBuysPip[4]; и 5MinutesSalesPip[1], 5MinutesSalesPip[2], 5MinutesSalesPip[3], 5MinutesSalesPip[1].

  3. Установите нечеткий вывод путем вычисления степени истинности и функции принадлежности, основанной на целевой прибыли. Например, для целевой прибыли из 5 пунктов, мы можем выбрать 3 в качестве нечеткого числа. Мы также можем выбрать 3,8, что приведет к установлению степеней принадлежности 0,6 и 0,4 для справедливой и умеренной прибыли соответственно.
  4. Составить правила фаззификации при помощи пересечения первых двух элементов массива и объединения с третьим или четвертым элементами массива, чтобы направить торговлю в направлении первых двух элементов массива, если их условия подходящие.
  5. Чтобы получить выход, избавьтесь от нечеткости, путем изменения состояния на шаге 3, чтобы направить торговлю в данном направлении только тогда, когда выполняется условие.
  6. Переведите торговлю в соответствующее направление, используя одну из вышеназванных систем, например “System 5A”, при помощи выхода, полученного на шаге 4.
  7. Примените шаги с 3 по 5 выше для второго массива 5-ти минутных данных, чтобы перевести торговлю в направлении, обратному тренду, используя вторую систему, которую можно назвать “System 5B”.

Фрагмент кода Размещение ордеров

// Объявить глобальные массивы входных переменных. Это:
// double dSlsPip5M [4];
// double dBysPip5M [4];
// SYSTEM 5A
if( (bSys5AClosed == true) ) //Проверка использования system 5A: если значение «закрыто», значит открывается только один торговый ордер одновременно
{
// Устанавливаем правила с помощью оператора И на первом-втором элементах массива и операторе ИЛИ на третьем и четвертом элементах массива, используя наше нечеткое число
if( (dBysPip5M[1] >= 3 * b_f_factor) && ( (dSlsPip5M[2] >= 3 * b_f_factor) || (dSlsPip5M[3] >= 3 * b_f_factor) || (dSlsPip5M[4] >= 3 * b_f_factor) ) )
{
// Разместить ордер на целевую прибыль в 5 пунктов, с условием «только покупка», если выполняется условие покупки
fnOpenTrade(Symbol(), OP_BUY, magic_number5A, Remarks5A, sys5A_stoploss, sys5A_takeprofit);
bSys5AClosed = false; //переназначение.
return(0);
}
// Аналогично устанавливаются правила и открывается ордер на целевую прибыль в 5 пунктов с условием «только продавать», если условие ниже удовлетворяет условиям продажи
if( (dSlsPip5M[1] >= 3 * b_f_factor) && ( (dBysPip5M[2] >= 3 * b_f_factor) || (dBysPip5M[3] >= 3 * b_f_factor) || (dBysPip5M[4] >= 3 * b_f_factor) ) )
{
fnOpenTrade(Symbol(), OP_SELL, magic_number5A, Remarks5A,
sys5A_stoploss, sys5A_takeprofit);
bSys5AClosed = false; //переназначение.
return(0);
}
}
//Для SYSTEM 5B, используются те же условия, что и в SYSTEM 5A, но торговые ордер открываются против направления тренда
if( (bSys5BClosed == true) ) //Проверка что system 5A и 5B закрыты
{
if( (dBysPip5M[1] >= 3 * b_f_factor) && ( (dSlsPip5M[2] >= 3 * b_f_factor) || (dSlsPip5M[3] >= 3 * b_f_factor) || (dSlsPip5M[4] >= 3 * b_f_factor) ) )
{
// Открытие торгового ордера против направления тренда.
fnOpenTrade(Symbol(), OP_SELL, magic_number5B, Remarks5B, sys5B_stoploss, sys5B_takeprofit);
bSys5BClosed = false; //переназначение.
return(0);
}
if( (dSlsPip5M[1] >= 3 * b_f_factor) && ( (dBysPip5M[2] >= 3 * b_f_factor) || (dBysPip5M[3] >= 3 * b_f_factor) || (dBysPip5M[4] >= 3 * b_f_factor) ) )
{
// Открытие торгового ордера против направления тренда.
fnOpenTrade(Symbol(), OP_BUY, magic_number5B, Remarks5B, sys5B_stoploss, sys5B_takeprofit);
bSys5BClosed = false; // переназначение.
return(0);
}
}

6 Тестирование и результаты

Meta Quote Language (MQL) 4 был выбран в качестве языка программирования для реализации советника, поскольку он наиболее распространенный язык программирования для Meta Trader 4 – самой популярной торговой платформы FOREX. Кроме того, его синтаксис и семантика имеют много сходства с языком программирования C и он относится к свободно распространяемым.

Советник был протестирован с использованием сервера Alpari (UK) на демо-счете, размещенном на Web.Alpari (UK), поскольку он является авторитетным брокером рынка FOREX. Результаты приведены ниже в таблице 1. Результаты демонстрируют, что советник способен осуществлять до 80% прибыльных сделок.

Alpari (UK) Ltd.
Счет:
1676941
Название: Dave Monitor Demo Валюта:
USD
Закрытые сделки:
Билет Время открытия Тип Размер Пара Цена S/L T/P Время закрытия Цена Прибыль
108000000 2010.04.23
19:40
баланс Депозит 5 000.00
111000000 2010.05.06
15:53
покупка 1.00 gbpusd 1.50394 1.50114 1.50444 2010.05.06
15:55
1.50444 50.00
111000000 2010.05.06
15:54
покупка 1.00 gbpusd 1.50387 1.50087 1.50437 2010.05.06
15:55
1.50437 50.00
111000000 2010.05.06
16:01
продажа 1.00 usdchf 1.10321 1.10601 1.10277 2010.05.06
16:23
1.10601 -253.16
111000000 2010.05.06
16:16
продажа 1.00 usdchf 1.10519 1.10819 1.10477 2010.05.06
16:19
1.10477 38.02
111000000 2010.05.06
16:20
покупка 1.00 usdchf 1.10492 1.10192 1.10542 2010.05.06
16:21
1.10542 45.23
111000000 2010.05.06
16:22
покупка 1.00 usdchf 1.10547 1.10247 1.10597 2010.05.06
16:23
1.10597 45.21
111000000 2010.05.06
16:24
продажа 1.00 usdchf 1.10579 1.10859 1.10536 2010.05.06
16:56
1.10859 -252.57
111000000 2010.05.06
16:24
покупка 1.00 usdchf 1.10605 1.10305 1.10655 2010.05.06
16:26
1.10655 45.19
111000000 2010.05.06
16:26
продажа 1.00 usdchf 1.10669 1.10969 1.10629 2010.05.06
16:49
1.10629 36.16
111000000 2010.05.06
16:51
покупка 1.00 usdchf 1.10655 1.10355 1.10705 2010.05.06
16:52
1.10705 45.17
111000000 2010.05.06
16:52
покупка 1.00 usdchf 1.10708 1.10408 1.10758 2010.05.06
16:52
1.10758 45.14
111000000 2010.05.06
16:52
покупка 1.00 usdchf 1.10769 1.10469 1.10819 2010.05.06
16:55
1.10819 45.12
111000000 2010.05.06
16:59
покупка 1.00 usdchf 1.10802 1.10522 1.10852 2010.05.06
17:02
1.10852 45.11
111000000 2010.05.06
16:59
продажа 1.00 usdchf 1.10762 1.11062 1.10716 2010.05.06
16:59
1.10716 41.55
111000000 2010.05.06
17:02
покупка 1.00 usdchf 1.10829 1.10529 1.10879 2010.05.06
17:02
1.10879 45.09
111000000 2010.05.06
17:02
продажа 1.00 usdchf 1.10854 1.11134 1.10808 2010.05.06
17:09
1.10808 41.51
111000000 2010.05.06
17:02
покупка 1.00 usdchf 1.10929 1.10629 1.10979 2010.05.06
17:02
1.10979 45.05
111000000 2010.05.06
17:02
покупка 1.00 usdchf 1.10982 1.10682 1.11032 2010.05.06
17:28
1.10682 -271.05
111000000 2010.05.06
17:09
покупка 1.00 usdchf 1.10804 1.10524 1.10854 2010.05.06
17:11
1.10854 45.10
111000000 2010.05.06
17:12
продажа 1.00 usdchf 1.10855 1.11135 1.10812 2010.05.06
17:14
1.10812 38.80
111000000 2010.05.06
17:14
продажа 1.00 usdchf 1.10796 1.11076 1.10757 2010.05.06
17:24
1.10757 35.21
112000000 2010.05.06
17:24
покупка 1.00 usdchf 1.10755 1.10475 1.10805 2010.05.06
17:25
1.10805 45.12
112000000 2010.05.06
17:28
продажа 1.00 usdchf 1.10745 1.11025 1.10701 2010.05.06
17:28
1.10701 39.75
112000000 2010.05.06
18:23
продажа 1.00 usdchf 1.10795 1.11075 1.10760 2010.05.06
18:23
1.10760 31.60
112000000 2010.05.06
18:23
продажа 1.00 usdchf 1.10786 1.11086 1.10753 2010.05.06
18:23
1.10753 29.80
112000000 2010.05.06
18:23
покупка 1.00 usdchf 1.10748 1.10468 1.10798 2010.05.06
18:28
1.10798 45.13
112000000 2010.05.06
18:29
продажа 1.00 usdchf 1.10792 1.11072 1.10754 2010.05.06
18:30
1.10754 34.31
P/L закрытия 231.59

7 Дальнейшая работа/рекомендации

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

8 Заключение

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

Ссылки

1. Emman A. : Optimal artificial neural network topology for foreign exchange forecasting, In: ACM Southeast Regional Conference, Proceedings of the 46th Annual Southeast Regional Conference on XX, pp. 63-68, ACM New York, NY, USA (2008)
2. Escobar-Jeria, V. H., Martin-Bautista, M. J., S?anchez, D. S., Vila, M.: Analysis of log files applying mining techniques and fuzzy logic. In: Proceedings of the 20th international conference on Industrial, engineering, and other applications of applied intelligent systems, pp. 483-492, Springer-Verlag Berlin, Heidelberg (2007)
3. Forex information site, http://www.webtrading.com/downloads/forexmanual.pdf
4. Gallaugher, J., Melville, N.: Electronic frontiers in foreign exchange trading. Communications of the ACM, Volume 47 , Issue 8 (August 2004), pp. 81-87, ACM New York, NY, USA (2004)
5. Kablan, A.: Adaptive Neuro Fuzzy Inference Systems for High Frequency Financial Trading and Forecasting. In: Third International Conference on Advanced Engineering Computing and Applications in Sciences, pp. 105-110, , IEEE Computer Society, Los Alamitos, CA, USA (2009).
6. Kanneh, A., Sakr, Z: Biometric User Verification Using Haptics and Fuzzy Logic. In: Proceeding of the 16th ACM international conference on Multimedia, (2008)Vancouver, British Columbia, Canada, pp. 93-94, ACM New York, NY, USA
7. Lin, L., Cao, L., Zhang, C.: The fish-eye visualization of foreign currency exchange data streams. In: ACM International Conference Proceeding Series; Vol. 109 proceedings of the 2005 Asia-Pacific symposium on Information visualisation – Volume 45, pp. 91-96, Australian Computer Society, Inc. Darlinghurst, Australia, Australia, (2005)
8. Mittal, A., Parkash, K., Mittal, H.: Software maintenance productivity assessment using fuzzy logic. In: ACM SIGSOFT Software Engineering Notes, Volume 35 , Issue 1 (January 2010), pp. 1-7, (2010)
9. Mittal, H., Bhatia, P.: Software maintenance productivity assessment using fuzzy logic. In: ACM SIGSOFT Software Engineering Notes, Volume 34 , Issue 5 (September 2009), pp. 1-4, ACM New York, NY, USA, (2009)
10. Novak, V., Perfilieva, I. Mockor, J.: Mathematical principles of fuzzy logic Dodrecht: Kluwer Academic, (1999).
11. O’Brien, K., Feldman, E. M., Rudisill, M.: Automated expert advisor interfaces. In: Posters and short talks of the 1992 SIGCHI conference on Human factors in computing systems, pp. 24-24, ACM New York, NY, USA (1992)
12. Peramunetilleke, D., Wong, R. K.: Currency exchange rate forecasting from news headlines. In: ACM International Conference Proceeding Series; Vol. 18, Proceedings of the 13th Australasian database conference - Volume 5, pp. 131-138, Australian Computer Society, Inc. Darlinghurst, Australia, Australia (2002)
13. Slany, K.: Towards the Automatic Evolutionary Prediction of the FOREX Market Behaviour. In: IEEE International Conference on Adaptive and Intelligent Systems, pp. 141-145, IEEE Computer Society, Los Alamitos, CA, USA (2009)
14. Subramanian, H., Ramamoorthy, S., Stone, P., Benjamin, J. K.: Designing safe, profitable automated stock trading agents using evolutionary algorithms. In: Proceedings of the 8th annual conference on Genetic and evolutionary computation, pp. 1777 – 1784, ACM New York, NY, USA (2008)
15. Wedding, D. K., Cios, K. J.: Time series forecasting by combining RBF networks, certainty factors, and the Box-Jenkins model. Neuro computing, pp. 149-168, (1996)
16. Zadeh, 1975. Zadeh, L.: The concept of linguistic variable and its application to approximate reasoning I. Information Sciences 8, 199-251 (1975)