МТС — взгляд дилетанта. Часть 0 — Введение.

Доброго дня уважаемые!

Не смотря на большой перерыв в публикации никому не нужных… забыл совсем, я же для себя пишу! И так… публикации интересной информации, касаемо фондового рынка и нас с вами, как индивидуумов желающих «по легкому срубить бабла», а таки был занят делами. И так или иначе, это все касалось МТС Механических Троговых Систем (далее — ТСистема).

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

Немного о себе, что бы сравнить свой опыт с моим, и сделать правильный вывод:

  1. Учил программирование в Колледже и Институте. В первом на страшных калькуляторах, во втором не помню как. За первый имеется красный диплом — так что калькулятором я отлично владею.
  2. Не учил никаких языков программирования. Не прочел ниодной книжки по этой теме, но читал много форумов и прочих открытых источников, изучая только ту тему, которая мне интересна.
  3. Волею своего возраста, в юности активно интересовался WEB программированием, а точнее HTML версткой. Так как тема развивалась, то конечно стал изучать PHP + MySQL — програмирование динамических ресурсов с привязкой к базе данных. Думаю что знаю этот язык достаточно хорошо, но понимаю так же что львиным знанием не обладаю совсем. Правда ресурс http://i.h2t.ru держится именно на этих знаниях, и развивается так же на них.

Вывод прост: я человек не владеющий популярными языками программирования, никогда не написавший ни одну рабочую программу для платформы Win32. Владеющий немного логикой, и имею опыт в WEB программировании (что наверное нельзя назвать полноценным знанием).

А теперь «ближе к телу», как говорил Ги Де Мопасан.

На сегодняшний день я использую для себя только два варианта ТСистем, а именно построенных на базе QUIK или Transq. Обе работают на строенных языках программирования: QPile и ATF.

как понятно из тегов, сегодняшний рассказ о программе Transaq (а потом про Quik).

РУКОВОДСТВО

Заходим на сайт руководства по языку ATF в раздел «Руководство», читаем, пытаемся понять все выше изложенное. Запоминать не нужно.

Обязательно изучить разделы Арифметика, Объекты, Функции и остальные — они пригодятся, и могут в вашем «больном» воображении нарисовать картины ТСистем завоевывающих мир для вас!

Далее самое интересное, раздел «Примеры». Вот тут есть много примеров, полезных и не очень. Нам нужен любой простой, главное что бы мы понимали как он работает на практике. Например КЫШ (он же RSI) или Cross SMA. Помним что у ресурса ест Форум! Очень полезный, много чего там уже обсуждалось, и можно найти ответ на любой вопрос, или задать новый.

Пишем CODE#

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

Нам будет нужна «подсветка» языка С/С++

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

Сигнал: пересечение двух скользящих средних

Самое простое что может прийти в голову дилетанту. НО простое не значит плохое. Так что для примера сгодится.

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
#samewindow
#line 0 solid red
 
extern fast = 9;
extern slow = 14;
var trend = 0;
 
function init()
{
	setInitCandles(1);
}
 
function calc()
{
	line[0] = MovAvg(ind_ema, fast, pt_close);
	line[1] = MovAvg(ind_ema, slow, pt_close);
 
	if (trend == 1 and line[0] < line[1]) {
		signal::alert("Продажа: по " + getSecName() +
						" быстрая MA пересекла медленную сверху вниз.");
	}
 
	if (trend == -1 and line[0] > line[1]) {
		signal::alert("Покупка: по " + getSecName() +
						" медленная MA пересекла быструю снизу вверх.");
	}
 
	if (line[1] < line[0]) {trend = 1;}
	else if (line[1] > line[0]) {trend = -1;}
}

Вот с этим скриптом мы и будем дальше работать.

Задача, установить весь софт. Сохранить скрипт локально, а потом скопировать его в Transaq.

Загружаем скрипт следующим образом: меню Графики -> Скрипты
В меню Скриптов, мы увидим все наши старания (пока их нет), жмем кнопку добавить.

Я всегда начинаю имя своих скриптов с символа ! — так их потом быстрее искать.

Далее добавим на график новый индикатор, и выбираем свой: !робот crossSMA (так его назовем).

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

В следующем выпуске я расскажу про страшные баги, которые есть в ATF на FORTS? которые нам не позволят легко «рубить бабло», и мы подумаем как их обойти (точнее я то уже все придумал, и просто расскажу как оно лучше всего делается).

Добавить комментарий