суббота, 28 февраля 2009 г.

AutoPanda взгляд из тестера

AutoPanda участвует в независимом тесте. Наблюдения за тестом мне уже позволили выявить ряд ошибок в коде - причем некоторые достаточно серьезны - к примеру, если в настройках установлена возможность установки нескольких ордеров, а интервал между ордерами меньше, чем длительность свечи, то на один свечной паттерн открываются все разрешенные ордера - в итоге вместо нескольких разрешенных ордеров открытых по разным паттернам получаем несколько ордеров открытых по одному паттерну - риск в итоге не диверсифицируется - получаем как бы одну сделку с увеличенным в несколько раз риском (что сейчас и происходит в тесте - скрипт торгует одновременно сразу всеми тремя ордерами с риском 110$ на каждый - тобишь суммарный риск 320 на по сути одну сделку вместо запланированного 110. Ну и еще одна проблема была связана с открытием ордеров - та версия что на тестировании сейчас открывает только SELL-ордера из-за ошибки в BUY функции для лимитников.
Ну да ладно я обновил код (забираем) и занялся тестированием обновленной версии. Что дало мне интересную инфу о действенности свечных паттернов.
Итак существует мнение, что свечные паттерны лучше всего работают на дневках. А вот что говорит тестер, депозит 10000$, Dayly, 2008.01.01-2009.02.21, EURUSD:
(Настройки эксперта: MM_type=2;Order_alg=1;Lots=0.1;MoneyRisk=110;ProfitLoss=2.2;OrderInterval=150;OpenShift=50;MaxWaitPos=3;UseTrall=1;)

Период H4 те же настройки:

Период H1 все то же:

Период М30:

Период М15:

М5:

M1 (тут единственное отличие OrderInterval уменьшен до 10, т.к. длительность свечей очень маленькая):

Итак что мы видим:
  • дневки оказались единственным периодом (!!!) на котором алгоритм вчистую слил депозит.
  • Самый лучший в плане гладкости кривой и второй в плане прироста депозита оказался таймфрейм Н4 (более 50% годовых).
  • Самым доходным оказался H1 (67% годовых)
  • Нижние таймфреймы оказались довольно хаотичными (отсутствует гладкость Н4), но ни один из них (кроме минуток) не просел ниже 20%, при этом доходность только у М30 была ниже тех же 20% - тобишь при доработке ММ (лот, убыток на сделку итд) думаю все эти таймфреймы вполне рабочие
Про минутки отдельная история - минутки хаотичны сами по себе - уровень шумов там в разы больше чем на других таймфреймах и тем не менее эксперт за интервал в год тестоистории показал всего 25% абсолютной просадки (36% относительная) и вывел баланс в плюс (хоть и на один доллар).
Не правда ли круто?
Теперь немного про алгоритмы тралла. Классический (UseTrall=1) дает додерживать прибыль не приближаясь к цене ближе первоначального стопа и поэтому в среднем его использование дает большую прибыль, чем удавка (которая уменьшает расстояние с развитием ситуации) и алгоритм установки стопа по свечам (этот вообще движется фактически впритык к цене и очень быстро бывает зацеплен). Однако на полухаотичных интервалах (те же минутки) удавка (UseTrall=2) становиться более эффективной. Обратите внимание как уменьшилась абсолютная просадка и вырос профит при замене классического тралла удавкой на минутках:

Теперь та же удавка на Н1:

Как мы видим - профит уменьшился процентов на 10-15, но уменьшилась и просадка, на том же графике можно видеть, что если с первоначальным вариантом тралла баланс в третьей четверти графика уходит практически до первоначального значения, то в варианте с удавкой эксперт сохраняет профит на уровне +1200$.
Думаю на CyberTrading выставлю модифицированную версию советника, работающего на тех же принципах. Единственное добавлю нейроалгоритмы, которые будут отсекать неэффективные паттерны и сделаю двойное подтверждение свечных моделей (тобишь чтоб советник открыл сделку на продажу нужно будет, чтоб шли два сигнала один за одним на продажу, и соответственно наоборот для покупки)

Книжный рынок "Петровка"

Раньше бывало приедешь на Петровку, ткнешься в какой-нибудь лоток по бизнес-книгам, а там сплошной менеджмент, управление персоналом, как заработать миллион и юридическая литература - и полный ноль книжек про трейдинг, форекс, акции, теханализ итп. Где-то год назад случайно на одной из раскладок увидел пару книжек по трейдингу, затесавшихся туда вроде как совершенно случайно, достаточно старых и не интересных. Спустя несколько месяцев на одной из раскладок внутри рынка постоянно стали появляться книжки по трейдингу и был там достаточно неплохой выбор - купил там Швагера, Гюнтера, неплохие книги по внутридневному трейдингу на Насдак. Считал, что это чуть ли не единственная точка на Петровке, где можно затариться подобной литературой, и вот трейдинг таки добрался на Петровку с полной силой - сегодня заглядывал чуть ли не в каждую точку с вывеской "литература по бизнесу и Финансам" и в каждой(!!!) были книжки по трейдингу, причем продавщицы знали что такое трейдинг, что такое теханализ, вылаживали мне на показ стопки книг и сокрушались, как это я смог купить раньше Швагера в твердом переплете так дешево :). Я аж оторопел, т.к. не ожидал, заглядывал туда чисто из интереса, чтоб в очередной раз убедиться что там ничего нет :0
Стоимость конечно не детская, особенно на привлекательные новинки и с учетом того что конец месяца и денег на кармане с прошлой зарплаты почти уже не осталось. С сожалением отложил интересный актуальный шедевр с описанием разразившегося сейчас кризиса и тем как он повлиял на оборот и торговлю акциями на крупнейших американских площадках. Затарился более дешевыми "Математик играет на фондовой бирже" (Джон Паулос) и "Техническим анализом" Джеральда Аппеля (этот чел более современен чем Швагер, его ТА - это не фьючерсная биржа 60-х, а современные технологии - он является создателем индикатора MACD и судя по тексту основным его занятием была разработка и тестирование компьютерных автоматических торговых систем, что собственно и привлекло).
Читаю сейчас Паулоса - интересная книга не только в плане математических и статистических методов, но и в том плане, что идет интересная привязка психологии и статистики. А такие вот фразы, к примеру:
Как только кто-то "надевает" ник, он (мужское местоимение, я подозреваю, почти всегда соответствует действительности), обычно освобождается от грамматики, проверки правописания, и самых обычных стандартов вежливой беседы. Другие люди в его высказываниях становятся болванами, идиотами итд..

Как бальзам на душу, ибо после кучи литературы , написанной в "доинтернетовскую эпоху" (тот же Швагер, Нисон итд) чувствуешь, что попал в современный мир, а не в эпоху неких доисторических американских трейдеров вручную рисующих графики и в столбик анализирующих тренд по акциям :)

вторник, 24 февраля 2009 г.

AutoPanda

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

вторник, 10 февраля 2009 г.

Новая дислокация скриптов

Передислоцировал MQL-скрипты на свою страничку вот сюда. Там же будут все обновления. Codebase идет лесом.
Из свежака новая версия Графического калькулятора и парный скрипт, выставляющий ордера по выставленным значениям калькулятора (единственное неудобство лот нужно в скрипте задавать отдельно от калькулятора).

понедельник, 9 февраля 2009 г.

codebase.mql4.com

Your access is temporarily limited or you are banned from using this website.

Н-да и эти горе программеры запрещают мне ковыряться в носу и ругать MQL. У них на сайте нет даже оповещения про бан. Я по скудоумию предполагал еще забытие пароля и безуспешно пытался зайти по восстановленному - глаза мне открыла английская версия сайта (русская просто перенаправляла на хомепэйдж) выдав вышеозначенное предупреждение. И эти ребята, которые не продумывают элементарных вещей (чего стоит их скудообразный форум) исчо собираются продавать CMS собственной разработки TeamWox. Смишно.

воскресенье, 8 февраля 2009 г.

MetaQuote жгут

Это пиздец - отписался седня на форуме метаквотез по поводу ихнего MQL5, по ходу дела сравнив с гэ:
Создали бы лучше вместо MQL5 хорошо документированное API доступа и соответствующие библиотеки для Perl, Python, C++. Эти языки гораздо лучше чем то гэ которым является MQL и при наличии открытого API из опенсорца мгновенно появилось бы сотни разнообразных терминалов для работы с серверами и тысячи торговых роботов, которые можно было бы запустить на Perl на любом веб-хостинге.
А так который год пишут новый язык, вместо того, чтоб использовать на порядок лучшие старые языки, которые давно уже классика жанра.
Ближе к вечеру попытался зайти в аккаунт у них на сайте, чтоб обновить там выставленную на премодерацию версию скрипта по выставлению мгновенных лимитников и обнаружил, что меня не пускает. Ржунемогу, если окажется что это не технические проблемы сервака, а бан за нелестный отзыв о ихнем MQL. Взрослые дяди типа обиделись.
В общем ну и черт с ихним CodeBase - вот собственна ссылка на окончательную версию скрипта для мгновенного выставления отложек. Собственно я выловил уже основные баги - теперь это скрипт, а не советник - почему скрипт - да потому что советник обновляет данные и заходит на новый цикл, только при приходе нового тика - соответственно выставить отложку на низковолотильном рынке будет сложновато. Скрипт же поставил на горячую клавишу и вперед. Линию по которой выставляются лимитники теперь не надо удалять для выставления ордера - просто перемещаете ее на уровень открытия и жмете горячее сочетание клавишь на скрипт, который автоматом выставляет лимитник с брекетами (отложкой и профитом). Забираем.
P.S.: Старую версию скрипта таки опубликовали в CodeBase, но там устаревшая версия, которая не приводит значения к "сьедобному" виду (тобишь чтоб ко-во знаков было не больше, чем кушает терминал и чтоб значения ордеров не попадали в промежуток между тиковым размером (что актуально для CFD)). Так как я забанен, обновить там скрипт не имею возможности - валидную версию качаем по ссылке выше.

суббота, 7 февраля 2009 г.

Скриптомысли

Раздумья по поводу предыдущего скрипта уперлись в ограниченный функционал MQL - оказалось. что там нет встроенных средств разбора XML. По ходу дела, как это часто бывает, взялся делать одно, перешел на другое и в итоге вместо задуманного скрипта сваял бетту советника для ручного скальпинга. О чем ниже.
Так как я недисциплинированный трейдер - часто делаю сделки "по наитию", которые в итоге оказываются убыточными. Основной минус этих сделок - они всегда открываются по рынку и соответственно никаких размышлений на тему "а может луше взять лимитником по более хорошей цене" не происходит, ну и стоп тоже автоматом не ставится. В итоге часто оказываюсь в роли зрителя, следящего за тем как уменьшается депозит и не имеющего ни сил, ни желания поставить таки стоп. Поэтому сваял скрипт для ускоренного выставления (и соответсвенно для скальпинга) лимитными ордерами. Основная идея: скрипт создает специальную линию на графике, выставляешь линию в место, где планируется поставить лимитник и нажимаешь клавишу "delete". Скрипт в том месте где была линия выставляет лимитный ордер (напраление определяется авоматически - выше рынка SELL LIMIT, ниже рынка BUY LIMIT) с заданными в настройках предопределенными параметрами - максимальным убытком (в долларах), и тэйк-профитом с заданным соотношением профит/лосс. Тобишь все ставится заранее. По идее, т.к. поставить такой лимитник будет гораздо быстрее, чем выставлять рыночный ордер - шаловливые ручки первым делом потянутся к нему - а тут засада: автоматические брекеты с заранее определеенным риском, профитом и размером лота. Так как начнет действовать ММ - даже совершенно хаотичные ордера при этом не будут столь убыточны как ранее. Пока что советник в стадии "бетта" - тестировал его при низкой волатильности сегодня под конец недели, ордера открываются не во всех случаях. Возможно это как-то связано низкой волатильностью и соответственно нечастыми "тиками" и циклами советника. В понедельник оттестирую на нормальном рынке и выдвину окончательный вердикт. Пока же доступна предварительная версия - забирать тут.