2013-07-05

WealthLabDeveloper 6. Lead Bars.

Если считаете что данные, полученные при тестировании (среднегодовая прибыль и т.д.) во вкладке Performance соответствуют истине, то, в большинстве случаев будете ошибаться. И это всего лишь из-за небольшой мелочи, которая была в четвертой версии, но которой не стало в пятой и шестой -- Lead Bars.

Например, хотите протестировать систему на дневном таймфрейме за год с 1 января до 31 декабря. А в системе применена МА с периодом 250. И если протестируете систему за год, то не получите ни одной сделки, так как пока не сформируется МА, сделок не будет, а сформируется она только через 250 баров, что и является ровно годом. То есть доходность за год и все остальные показатели получите в сильно искаженном виде. В данном случае, просто получите все нули. Период 250 я привел как крайний случай. Возможно в системе будут индикаторы с меньшим периодом, например 50 или 75. Но и в этом случае , тестирование начнется не с начала года, а через три-четыре месяца, когда сформируются индикаторы. И, соответственно, все показатели системы будут искажены так как тест был не за полный год, а за восемь месяцев, например. А тестер утверждает что это было за год.

Если по этому поводу обратитесь в поддержку, то вам посоветуют начинать тестировать не с той даты, с которой хотите протестировать, а с даты, которая получится путем вычитания какого-то количества баров. Например, как в вышеупомянутом случае, начинать тестирование не с 1 января, а отнять 250 баров и начать тестирование с 1 января прошлого года. Тогда индикатор с периодом 250 как раз сформируется на нужную вам дату, то есть 1 января этого года. Вроде бы все нормально -- все сигналы пойдут вовремя и захватите все сделки в течении года. Но, в данном случае, суть будет в том что все данные ваших тестов будут уже подсчитываться ЗА ДВА ГОДА. То есть, например, за время теста получите 30% годовых, но на самом деле программа разбросает эту доходность на два года, так как фактически тестировали именно два года. И среднегодовая доходность будет уже не 30%, а 15%. И также будут искажены и другие данные и коэффициенты.

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

Еще один фактор, сравнение полученной эквити с кривой "купил-и-держи" -- этим просто не сможете корректно воспользоваться, так как "купил-и-держи" всегда будет начинаться от фактически заданной даты начала тестирования. А тестовая эквити от начала сформировавшихся индикаторов. То есть, в вышеприведенном случае их старт будет дан с разницей в 250 дней (баров).

Конечно, все и так понимают что исторические тесты остаются только тестами для приблизительной прикидки работоспособности систем и прошлые данные никогда не повторятся в будущем. Приблизительно так и объясняют этот казус разработчики WLD  на своем форуме в ответ на требования клиентов пересмотреть свое отношение к вопросу, категорически отказываясь ввести Lead Bars, как это было в четвертой версии. Вероятно, для этого им пришлось бы перепрограммировать очень много того что уже запрограммировано -- иначе их упертость не объяснить. Но все же, думаю, это не совсем правильно. 

Эта проблема свойственна исключительно WLD 5-6. В других программах такой проблемы нет. 

2013-07-01

Нормирование фьючерсов в целях диверсификации торговли.

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

- средний диапазон цены (для этого в основном, применяют ATR, например с периодом 20 — количество торговых дней в месяце. То есть означает какая была среднедневная волатильность за прошедший месяц)

- цену одного пункта (долларовая прибыль/убыток при изменении цены на один пункт)

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

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

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



Теперь, если хотим покупать равными частями, то купим, например, 1 контракт серебра, 2 контракта золота, 3 контракта соевых бобов, 6 контрактов британского фунта, 10 контрактов риса и т.п. В данном случае уже будет все справедливо и диверсифицированно.

Еще, наверное, было бы интересно сравнить эти фьючерсы с нашим любимым фьючерсом на индекс РТС. Ну вот, если я правильно посмотрел, то один пункт фьючерса на индекс РТС равен 0,02 доллара. А месячный ATR равен примерно 2500 пунктов.  Перемножаем их и получаем 50 долларов. То есть один контракт фьючерса на индекс РТС в среднем в день колеблется на 50 долларов.

Тогда если сравнить наш фьючерс даже с самым дешевым американским фьючерсом на рис,  получаем что один фьючерс на рис равен 8 фьючерсам на РТС.  А один контракт нефти равен уже 30 фьючерсам на РТС. А 1 контракт серебра — 76 фьючерсов РТС. Вот полная таблица:



Так что, фьючерс на индекс РТС это очень демократичный инструмент, позволяет участвовать в торгах даже с очень малыми депозитами — как видим из таблицы, он в 15 раз дешевле своего американского аналога, мини-фьючерса на SP-500.  Уже не будем упоминать о золоте, нефти , серебре….. У кого депозит позволяет  играть на ФОРТСе не более чем 5 -10 -ю контрактами, тот пока не сможет играть на американском рынке, так как контракты там значительно подороже.