Home

Advertisement

Customize
Beginner trader Below are the 13 most recent journal entries recorded in the "1mv" journal:
October 20th, 2009
01:49 am

[Link]

Переключение стратегий


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

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

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

(Leave a comment)

September 8th, 2009
01:15 am

[Link]

Update
Пробовал торговать минимально возможным количеством чтобы поизучать как исполняются ордера, сколько берётся коммиссия, какая доступна информация по ордерам, как выглядит отчетность, и т.п.. Один минилот (1/10 лота) равен $1000, с плечом 1:100 реальных денег играет $10, движение на счёте в пределах доллара, вполне можно использовать для тестирования систем - потерять все деньги сразу не получится. Пробовал торговать вручную с парой индикаторов - пытался покупать дешевле, продавать дороже. Все сделки в плюсе, но занятие это очень нервное, надо скорее эту работу передавать роботам.

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

Осталось отладить исполнение в реальном времени и можно будет ставить на тестирование с минимальной ставкой.

(Leave a comment)

July 17th, 2009
10:12 pm

[Link]

New Account - MBTFX


Долго думал где же открывать торговый счет. Дилинговые центры отпали первыми, во-первых, из-за спорной репутации, во-вторых, из-за отсутствия API, то есть возможности прикрутить к ним свою софтину - все как сговорились используют Метаброкер, можно конечно написать для него скрипт и подавать в него сигналы из своей проги, но такая конструкция ненадежна, да и не для того я избавлялся от Неотикера, чтобы опять впадать в зависимость от чужого софта. В третьих, ДЦ меня не устраивают из-за отсутствия легального способа платить налоги с прибылей. По этой последней причине я стал выбирать брокеров из числа российских банков, они выступают в качестве налоговых агентов и перечисляют в бюджет 13% с прибыли, так что мне совершенно не надо забивать себе этим голову. Кроме этого, некоторые банки предоставляют API вплоть до протокола FIX (общепринятый стандарт обмена финансовой информацией), но не все так хорошо. Во-первых, подходящих банков нашлось всего два, как я уже писал ранее, во-вторых, у них какой-то очень самобытный подход к ордерам, в альфе прочитав документацию я даже не понял есть ли у них stop и limit ордера, что-то есть похожее, но называется как-то по-своему, наверняка и исполняются они по каким-нибудь своим неведомым правилам, лучше не испытывать это на себе. Во втором банке сразу настораживает сайт в стиле 90-х годов с нечитаемым шрифтом, но это было бы неважно, если бы в документации я бы опять не обнаружил некий особый подход к ордерам, вроде бы там есть и stop и limit ордера, но все равно присутствует какой-то нестандарт, некая рожденная в муках отсебятина. Да и собственно на market, stop и limit перечень типов ордеров и ограничивается. По-этому переходим наконец к MBTrading, у которого, к слову, типов ордеров в наличии 21 штука, прекрасно с картинками документированных.

Итак, почему не отечественное, почему американский брокер? Потому что:

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

2. API в наличии, в том числе FIX, плюс возможность арендовать выделенный сервер на их площадке и не бояться перебоев с интернетом.

3. Хорошая репутация. То есть, если они говорят, что предоставляют максимально хороший спред, а деньги делают на комиссии, то этому можно верить.

4. Разнообразие ордеров. Я уже писал ранее, что можно улучшить прибыльность систем, только за счет введения новых типов ордеров как например типа трейлинг профит стоп. Ну и еще там есть ордера, которыми можно заменить ненадежные в симуляции лимит ордера, вместо них (и стопов кстати тоже) можно использовать TTO (threshold triggered orders) с проникновением цены, которые покупают или продают когда цена не просто коснулась, а прошла уровень как минимум на пункт.

5. У MBTrading кроме форекса есть в наличии фондовый рынок и деривативы. Так что, с минимальными модификациями программного обеспечения можно будет торговать чем угодно.

6. Я нашел легальный способ переводить заработанные деньги в Россию с возможностью уплатить налоги. Способ геморойный и дорогой на первоначальном этапе, но если все получится и на счёте у брокера будет образовываться заметная прибыль, то все можно будет организовать.

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

Тем временем, дописал оптимизатор стратегий, осталось прикрутить API брокера к своей софтинке и пробовать торговать с плечом 1:1 для начала.

Tags: ,

(4 comments | Leave a comment)

May 25th, 2009
03:34 pm

[Link]

Брокеры



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

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

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

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

(Leave a comment)

01:48 pm

[Link]

Стопы и лимиты
Всё это время, два месяца с последней записи, совершенствовал сигнальную систему.

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

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

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

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

(Leave a comment)

March 22nd, 2009
10:31 pm

[Link]

Сигналы
Есть такая вещь в механических торговых системах как система сигналов. Например, пересеклись две линии индикаторов - это может быть сигнал к открытию позиции, пересеклись в другую сторону - опять сигнал, на закрытие позиции. Программный менеджер сигналов должен переводить их в команды брокеру, следить за ответами брокера - какой ордер исполнился, полностью или частично, посылать нужные команды, чтобы изменять цену существующего стоп/лимит ордера, ставить стоплосс и профит таргет, отменять стоп, если исполнился таргет и наоборот. Я делал много вариаций на тему сигналов, это наверное, наиболее видоизменяющаяся часть кода. И также, наверное, наиболее значимая часть. В общедоступных торговых платформах пользователю обычно дается некий элементарный функционал - купить/продать/сколько/почем, а более высокоуровневой системы сигналов никакой нет или она совсем простая.
Весь мой этот март посвящён переделыванию собственной системы сигналов, которую создал летом 2007, сейчас добавляю некоторые отложенные "на потом" фичи и выпрямляю кое-какие кривые места.
В общих чертах функционал получается такой, описываю это тут, в том числе, чтобы и мысли привести в порядок:
- сигнал - это набор параметров: размер входа в позицию, тип входа - стоп/лимит/маркет, цена стоп/лимит входа, время ожидания исполнения стоп/лимит входа, время жизни открытой позиции (в барах, в минутах, до конца дня, неогр.), профит таргет, стоплоссы (в пунктах, процентах, деньгах) исходный стоплосс, брейкивен, трейлинг стоп, максимальное количество входов в одном направлении, максимальный размер позиции.
- стратегия согласно своей логике выставляет параметры сигнала и забывает о нем
- обработку сигнала по всему его жизненному циклу производит отдельная подсистема
- стратегия может вызывать подстратегии и аггрегировать их сигналы, и далее может передавать сигналы в отвязке от логики исполняющей стратегии. То есть сигналы содержат достаточно информации, чтобы исполняться отдельно от логики.
- один и тот же набор сигналов может независимо исполняться одновременно у нескольких брокеров, а также в режиме симуляции, затем результаты доступны для сравнения, можно выяснить насколько работа стратегии найденной в симуляторе соответствует работе с реальным брокером в режиме симуляции у брокера и с реальными деньгами.
- на уровне исполнения сигналов можно задавать сколько позиций разрешается открывать за одну торговую сессию.
- группы сигналов - когда один из сигналов в группе исполняется, остальные отменяют свои ордера. Так можно иметь разные сигналы для длинных и коротких позиций и задавать их параметры независимо. В стратегии прорыва можно выставлять два сгруппированных стоп входа ниже и выше текущей цены, если цена идет вверх, то исполняется стоп ордер на покупку, а стоп ордер на продажу отменяется, далее для новой позиции выставляется лимит выход для профит таргета и исходный стоплосс, после получения определенной прибыли стоп меняется на брейкивен на уровне цены входа в позицию, потом активизируется трейлинг стоп.

Tags: ,

(2 comments | Leave a comment)

January 31st, 2009
03:25 am

[Link]

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

Tags:

(Leave a comment)

January 4th, 2009
03:06 am

[Link]

Входные данные
Для теханализа нужны исторические данные за период времени отражающий всевозможные изменения на рынке, на практике достаточным будет промежуток времени от пяти до десяти лет. Следующий вопрос - детализация, атомарной единицей является тик (tick). Во время торговой сессии трейдерам поступает информация с биржи в виде потока тиков. В течение одной секунды могут поступать десятки тиков, каждый тик содержит цену, которую хотели получить продавцы - аск (ask), цену, которую хотели заплатить покупатели - бид (bid), и между ними - цена, по которой реально произошла сделка - трейд (trade), а также информация об объеме совершенных сделок по этой цене (volume). Вся поступающая информация о тиках как правило сохраняется в базе данных на стороне трейдера, таким образом в любое время можно воспроизводить прошедшие события и тестировать стратегии на исторических данных. Кроме того, можно получать эти данные из других источников, существуют компании специализирующиеся на записи биржевой информации с целью дальнейшей продажи трейдерам.


Чтобы результаты бэктестинга стратегий максимально соответствовали работе в реальных условиях лучший вариант - это тестирование на тиковых данных, но существующая вычислительная техника не позволяет решать задачи оптимизации в течение разумного количества времени не прибегая к использованию компьютерных гридов (суперкомпьютеров). Например, один месяц тиковых данных может иметь более миллиона отдельных тиков. В настоящее время появляются возможности использования мощностей графических сопроцессоров для математических вычислений, это даёт некоторую надежду, но в тоже время не снимается органичение по объему памяти, так, год тиковых данных может занимать до гигабайта оперативной памяти. Все эти ограничения заставляют искать компромисс, достаточно приемлемым является использование сжатых тиковых данных в виде временных, ценовых, объемных баров/свечей. Бар и свеча представляют собой одно и тоже, но рисуются на графиках по разному. Они содержат четыре цены OHLC - цену открытия (Open), максимальную (High), минимальную (Low) цены за период и цену закрытия (Close) бара или свечи. На рисунке ниже - один и тот же пятиминутный график цены изображенный барами и свечами. Каждый трейдер сам решает что ему нагляднее, кроме того для свечей существуют методы прогнозирования, основанные на внешнем виде каждой отдельной свечи.




Таким образом, для теханализа принято использование данных сжатых в бары/свечи. Они могут представлять любой отрезок времени, по своему происхождению они могут быть временными (когда один бар представляет фиксированный отрезок времени), объёмными (когда новый бар формируется после того как накопится определённый объем совершенных сделок), ценовыми (когда новый бар формируется после того как разница между максимальной и минимальной ценами текущего бара достигает определенного значения). Размер бара также называют таймфреймом (timeframe).


Оптимальный таймфрейм используемых баров может быть разным для каждой стратегии, создав стратегию имеет смысл потестировать её на разных таймфреймах. Кроме этого, одна стратегия может использовать сразу несколько таймфреймов одновременно, например, по часовым барам определять состояние рынка - тренд/волатильность, а по минутным генерировать сигналы покупки/продажи.


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


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

(2 comments | Leave a comment)

December 29th, 2008
01:23 am

[Link]

Стратегии
Трейдеры торгующие вручную, помимо своего опыта и интуиции руководствуются некими правилами при принятии своих решений об открытии и закрытии позиций, свод таких правил можно называть торговой стратегией. На график цены или рядом с ним выводятся вспомогательные линии, вычисляемые по различным формулам - индикаторы, один из простейших индикаторов - скользящее среднее (moving average) вычисляется как среднее N последних значений цены, результат выглядит как сглаженный график цены, колебания усредняются, и четко видна общая тенденция - куда движется цена, вверх или вниз. Главный недостаток у этого индикатора - некоторое запоздание, например, после долгого движения вверх, цена разворачивается и начинает движение вниз, тем временем скользящее среднее разворачивается с задержкой находясь по влиянием предыдущих высоких значений.
Опишу простейший пример стратегии созданной с использованием индикатора скользящего стеднего - если график цены (берётся цена закрытия) пересекает индикатор снизу вверх мы покупаем, если сверху вниз, то продаём. В программе Neoticker это будет выглядеть так:



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



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


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


По общему мнению в этой отрасли в ближайшие десять лет произойдёт полное замещение ручного труда на автоматизированный.

Tags: ,

(4 comments | Leave a comment)

December 27th, 2008
09:57 pm

[Link]

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



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



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

Tags: , ,

(Leave a comment)

December 26th, 2008
06:35 pm

[Link]

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

Чтобы продемонстрировать потенциал трейдинга, приведу оригинальный пример - что было бы если бы у нас была машина времени позволяющая заглядывать в будущее, допустим мы изобрели такую вещь и научили её получать цену на золото, которая будет на бирже через десять минут. Вот что из этого получилось бы:



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

Вот кусочек графика поближе:



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

(Leave a comment)

05:14 am

[Link]

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

1. Использование ячеек памяти, в них можно записывать значения и считывать. Для удобства ячейки можно называть именами, давать им типы, задавать размерность, использовать массивы ячеек, структуры. Есть разные приёмы работы с памятью, много чего придумано для удобства.
2. Условный оператор - если <что-то> то сделать <это> иначе сделать <то>.
3. Цикл - пока <что-то> повторять <это>. По сути это просто приём использования условного оператора.
4. Вызов подпрограммы, однажды написанный кусок программы можно вызывать потом по надобности.

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

Я знаю много языков, но больше всего проектов я сделал в Delphi, мне этот язык очень нравится. Как-то приходится по душе, лучше воспринимаю чужие и свои программы на этом языке. Часто приходится открывать программы написанные мной же год-два назад и очень легко всё воспринимается. Выбор языка программирования - это идеальная тема для холиваров (священных войн) в публичных форумах и чатах. Но каждый сам выбирает себе язык по душе и работает с ним. Время от времени появляются новые языки, к примеру, относительно недавно фирма Майкрософт придумала новый язык C# (си шарп), довольно удобный и перспективный. Так что не обязательно всю жизнь программировать на одном языке, надо экспериментировать и составлять своё мнение.

Свою торговую платформу я пишу на Delphi.

(3 comments | Leave a comment)

December 25th, 2008
11:45 pm

[Link]

Может трейдером стать?
Решил заняться трейдингом. Торговать думаю не на ММВБ и РТС, а где-нибудь еще. В качестве брокера присмотрел http://www.mbtrading.com, в качестве поставщика данных http://www.esignal.com. Софт для теханализа пишу сам. Рассматривал готовые образцы - http://www.tradestation.com, http://www.neoticker.com вроде сначала все хорошо, но потом, когда начинаешь писать плагины сталкиваешься с убогостью программного интерфейса, не говоря уже о тормознутости.






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


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


Вот такая в двух словах идея. Для первого поста думаю достаточно.

(5 comments | Leave a comment)

Powered by LiveJournal.com

Advertisement

Customize