В нашей библиотеке: 321 книг 226 авторов 0 статей За всё время нас посетило 1121778 человек которые просмотрели 20476735 страниц.
Читатели оставили 10 отзывов о писателях, 70 отзывов о книгах и 6 о сайте


Название: Разработка, тестирование, оптимизация торговых систем для биржевого трейдера

Автор: Роберт Пардо

Жанр: Технический анализ

Рейтинг:

Просмотров: 1420

Страница: | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 |




Эта торговая система может быть определена следующим набором формул и правил:

 

Определение 1: С(/) — цена закрытия t-ro дня, при этом, что сегодняшний день t=.

Определение 2: х это период скользящей средней один (МА1). Определение 3: у это период скользящей средней два (МА2). Формула 1: MAI = [C(t)+C(t+)+...+C{t+x-l)]/x Формула 2: МА2 = [C(t)+C(t+l)+...+C(t+y-l)]/y Правило 1: у никогда не меньше двух х.

Правило 2: Если МА1(/)>МА2(0 и МА1(М)<МА2(/-1), то покупать.

Правило 3: Если вы находитесь в покупке и МА1(/)>МА2(/), то не делать ничего.

Правило4: Если МА1(г)<МА2(/) и МА1(М)>МА2(М), то продавать.

Правило 5: Если вы находитесь в продаже и МА1(г)<МА2(г), то не делать ничего.

На языке программирования С эти же идеи выглядят несколько иначе. Программа на языке С для вычисления значения скользящей средней показана ниже:

int SMA( int day,int period,int type,float value {

register int i; float total;

*value = 0.0;

if (period<=0)

period = 1;

if  (day < period) return(  -1  ) ;

total = 0.0;

for  (  i = 0;   i<period; i++)

total += get_price_data( type, day-i);

*value = total/(float) period

return(  1   );

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

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

В примерах этой книги будет использована программа Advanced Trader; однако другие доступные программы должны давать пользователю те же возможности определенно выражать правила, а также тестировать и оптимизировать эти правила. Торговая идея излагается на языке Скрипт (Script), являющимся языком торговли и тестирования в программе Advanced Trader. На Скрипте предыдущая торговая система, задаваемая двумя скользящими средними, выглядит следующим образом:

Period_l = 5

MAl_Today = sma[с:,Period_l,0,0] MAl_Yesterday = sma[с:,   Period_l,0,1] Period_2 = 20

MA2_Today = sma[с:,Period_2,0,0] MA2_Yesterday = sma[c:,Period_2,0,1] Longif MAlJToday > MA2_Today then

Longif MAl_Yesterday < MA2_Yesterday then Order #1

buy net_position + 1 at MOO end_order

Endif

Endif

Longif MAl_Today < MA2_Today then

Longif MAl_Yesterday > MA 2_Yesterday then Order #2

sell net_position + 1 at MOO end_order

Endif

Endif

 

Как вы видите, Скрипт гораздо легче для понимания, чем код С. Он намного более сжат, чем обычный английский, и очень напоминает вариант спецификации с помощью определений и Формул. Скрипт определяет «Период_1» как число «5», а «Пери-си^» как число «20». Далее, он определяет «МА1_Сегодня» как простую скользящую среднюю длины 5 на текущий день (то есть,

sma[c:, Period_l,0,0]), и точно так же для других значений этой скользящей средней по ценам закрытия.

Условие покупки устанавливается с помощью команды, называемой «longif». Команда «longif» — это способ использования условия — то есть, если выражение истинно, то делай это; если оно ложно, то делай что-то другое. Когда эти условия выполняются, выставляется ордер на покупку и переворот из текущей короткой позиции с помощью приказа «рынок по открытию» (Market-on-open, MOO) следующего дня. Условие продажи тоже задается с помощью другой команды «longif». Когда эти условия выполняются, выставляется ордер на продажу и переворот из текущей длинной позиции с помощью МОО-приказа — «рынок по открытию» следующего дня.

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

Шаг 3: Тестируйте торговую стратегию

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

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

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

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

Данный тест включает сочетание и рынков, и временных периодов. Эта группа тестов состоит из 24 различных тестов, 5 разных рынков и 10-летнего временного интервала, разбитого на 2-летние отрезки. Система будет протестирована на 5- и 40-дневной скользящих средних. Результаты этих 24 тестов приведены в Таблице 2-3.

Чего следует ожидать от такого теста? На самом деле, немногого. Если каждый тест показывает высокую прибыль (например, более $10,000), считайте, что найдена выигрышная система. Конечно, при условии, что все аспекты тестирования были представлены правильно и моделирование было реалистичным. Однако если каждый тест показывал большой убыток (например, более $10,000 за год), очевидно, что данная система просто бесполезна. (Есть несколько деликатных исключений из этого правила; они будут обсуждаться в последующих главах.) По всей вероятности, данную систему на этой стадии следует исключить из рассмотрения. Если же, как это часто бывает, результаты смешанные (то есть, есть несколько крупных выигрышей и крупных убытков, наряду с меньшими выигрышами и убытками), можно переходить к этапу оптимизации. Переходите к следующему этапу разработки системы только в том случае, если большинство тестов не показывает крупные убытки.




Страница: | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 |

Оцените книгу: 1 2 3 4 5

Добавление комментария:






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

Копирование материалов сайта разрешено только с использованием активной ссылки на yourforexschool.com Copyright © 2010