<<
>>

Начало работы с программой

Для запуска программы необходимо выбрать ярлык «Getrt» с рабочего стола; при этом запускается «Global Server», если до этого он не был запущен.

Основное меню

Основное меню состоит из закладок: «File», «Page», «Chart», «Tools», «View», «Window» и «Help» (см.

рис. 1). Ниже расположено несколько «кнопок», которые выполняют действия, содержащиеся в выпадающем меню. Advanced GET for Т52000Ї

І'-

Рисунок 1. Основное меню

Рассмотрим каждую закладку подробнее: •

«File» — содержит операции построения графика («New Chart»), его распечатки и выхода из программы. Остальные опции недоступны. •

«Page» — с ее помощью можно изменять настройки страницы (в «Trade Station» — рабочая область), на которой изображается график котировок. Возможные опции:

— новая страница («New Page») — работать в новой чистой странице. Необходима для одновременного использования нескольких графиков; — загрузка страницы («Load Page») — загружает сохраненную страницу; —

сохранить страницу/сохранить страницу как («Save Ра- ge»/«Save Page As») — сохраняет текущую, уже названную страницу и сохраняет страницу под другим именем; —

автостраница («Auto Page») — создает подстраницу к текущей. •

«Chart» — закладка для работы с графиком котировок. Она включает: —

«Issue» — настройки параметров ценной бумаги: акция, компрессия данных, временной интервал, —

методики («Studies») — содержит различные методы технического анализа и метод волновой теории Эллиота; —

период («Period») — изменение компрессии данных; —

установки («Properties») — изменение цвета и шрифта заголовков в области построения графика; —

удалить («Delete») — можно удалить либо все, либо определенные линии. •

«Тоо/s» — содержит графические объекты, которые можно рисовать на графике. •

«View» — в закладке можно указывать, какие панели инструментов отображать, а какие нет. •

« Window» — можно выбрать определенное окно либо ука

зать порядок расположения окон: каскадом, горизонтально, вертикально.

Построение графика цены

Загрузка графика осуществляется через пункт «File» в основном меню, затем необходимо выбрать пункт «New Chart».

Другой вариант — нажать на «кнопку» [J?], которая находится ниже основного меню. Появится новое окно (см. рис. 2), в котором необходимо указать ценную бумагу, компрессию данных и временной интервал. После этого котировки будут поступать в программу в режиме реального времени. «Advanced Get RT For TS2000» JLoad j

Cancel

Help

Poilfoioj IbSU Symbol Bart Period JLKGH |ЗОО 1 F 3 Dispiaylmws From j zi Symbol | Title i ШШІ | p Change AH Chart*

Keyboard »

Рисунок 2. Загрузка графика

Изменение графика цены

Вид ценового графика, как и в «Trade Station 2000», легко настроить для более удобной работы. На панели инструментов слева от графика расположен ряд функциональных клавиш, при помощи которых можно перемещаться по графику (это можно сделать с помощью стрелок), сужать и расширять сам график и расстояние между барами, делать их толще или тоньше.

Методы графического анализа

В программе реализован широкий набор методов графического анализа. Для их применения необходимо выбрать закладку «Tools» либо непосредственно выбирать необходимое из графической панели справа от графика. Изменение настроек осуществляется нажатием правой кнопки мыши непосредственно на графических объектах. Наиболее интересными разработками, на наш взгляд, являются автоматические линии тренда, ценовые уровни отката и временные уровни Фибоначчи.

Волновая теория Эллиота

Согласно волновой теории Р. Н. Эллиота все циклы разбива- ются на движения: основные и корректирующие. Причем выделяют большие, средние и малые циклы, например корректирующая волна большого цикла включает более мелкие циклы. Главное правило данной теории — основные движения состоят из пяти волн, а корректирующие — из трех Основное движение включает первую, третью и пятую волны, они направлены в одну сторону; корректирующее движение — вторую и гвертую, направлены в противоположную сторону. Все вол- в программе обозначены цифрами (см. рис. 3):

л-' •У.:..

1*/(МХм (ион I

>•5* Oat г & л*, щам м*>

QiSWiaMei ai-gjyj, .<1 ШІ^иів»Гц~>1»і .«l?W

J7»303

О ЫЛЧН H €13#0» І SW.000 t

•н<зл«

-we .«в

-«в*»4

o—.

H

it

MU

5ІХ

І

й

S3

nr

±J

о

s

кЛчЛ

о

-«в.О»

I

-JSCAO*

-но**

»

'И r 46j*

ЙІІН

г д.»*— —M tea

Рисунок 3.

Применение волновой теории PH Эллиота к анализу графика цен

«Advanced Get RT For TS2000» •

большие движения — арабскими цифрами в кружках — О; •

более мелкие — без кружков — 1; •

самые мелкие — римскими цифрами — ні.

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

На практике волны обычно хорошо различимы лишь на

истории, потому что достаточно сложно постоянно держать в

голове множество правил, созданных Р. Н. Эллиотом и доработанных им впоследствии

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

Индикаторы технического анализа, доступные в программе

Для их загрузки необходимо выбрать пункт «Chart», а затем «Studies». При этом появится список, разделенный на две части; в верхней — индикаторы, нарисованные непосредственно на ценовом графике, в нижней — индикаторы, нарисованные под ним.

Помимо индикаторов, аналогичных «Meta Stock» или входящих в «Trade Station», в этом пакете, на наш взгляд, стоит отметить следующие.

«Elliot Waves» — автоматический расчет волн Эллиота, на основе которых можно построить анализ текущего состояния рынка (см. рис. 3).

«Cycles» — индикатор строит прогнозную циклическую модель графика цены. На рисунке 4 индикатор выведен в самом низу экрана.

«Pivots» — индикатор определяет разворотные точки и помечает их: Р — значимый разворот, J — менее значимый разворот, возможна коррекция. На рисунке 4 индикатор отображается буквами на графике цены.

Ailv-tiMrtiwiiiH fsjwui 1іо« ';Й4Иі>і

Q rt* Pjs« chert 10* Vtew 1Мг<Ы нгі»

-oooo

fljwj Sllff.l«g)[&|g:%|ttl aj t j 1 ffiicci |Wgy I J-п l^ow|y>| o« [ tun |»^j^| 7Ы [%?!

1і иііімі м—"Mi гч ітііШава

Рисунок 4. Пример применения индикаторов технического анализа

«Price Clusters» *— индикатор отображает распределение котировок по ценовым уровням, что позволяет определить наличие уровней поддержки-сопротивления у определенных значений цен.

На рисунке 4 индикатор представлен гистограммой распределения в правом углу экрана. Приложение 7

КОДЫ МЕХАНИЧЕСКИХ ТОРГОВЫХ СИСТЕМ ДЛЯ «TRADE STATION 2000»

Программный код «lUp_Stochastic» Программный код «lDown_Stochastic» Программный код «Risk Trailing» Программный код «Sysiem2» Программный код функции «ТІ» Программный код «MovAvg2» Программный код «MA+%SL» Программный код «MA+AdVolSL» Программный код «MA+SRLineSL» Программный код «МА+ChannelSL» Программный код «lUp_Stochastic»

Inputs: Length(14), OverSold(30i, TakeProfit(60), StopLoss(30), FloorAmount(20), RiskPercen!(20);

Variables: KLine(O), DLine(O), OpenPrice(O), RiskTrailingSwitcher(O), max(O);

KLine = S(owKCustom(High, Low, Close, Length);

DLine = S(owDCustom(High, Low, Close, Length);

If KLine Crosses Above DLine AND KLine < OverSoJd AND DLinc < OverSold and marketposition(0)=0 Then begin Buy («Stch») This Bar on Close;

Ope n P ri c.e =clo se;

end;

if OpenPrice>0 then begin

if (high-OpenPrice)>=(FloorAmount/10000) and RiskTrail- ingSwitcher=0 then begin

RiskTrailingSwitcher= 1; max=high-Opcn Price;

end;

if RiskTrailingSwjtcher=l then begin if (high-OpenPrice)>max then max=high-OpenPrice; if (close-OpenPrice)<=:max*(l-RLskPercent/lOO) then begin

HxitLong («RT») this bar on close; OpenPrice=();

RiskTrailingSwitcher=0;

max=0;

end;

end;

if (cJose-OpenPrice)>=(7akeProfit/10000) then begin ExitLong («ТР») this bar on close;

0penprice=0;

end;

if (close-OpenPriee)<=(-StopLoss/10000) then begin ExitLong («SL») this bar on close;

C)penPrice=0;

end;

end;

Программный код «1 Down_Stochastic»

Inputs: Length( 14), OverBought(70), TakeProfit(60), StopLoss(30), FloorAmount(20), RiskPercent(20);

Variables: KLinc(O), DLinc(O), OpcnPricc(O), RiskTrailingSwitcher(O). max(O);

KLine = S[owKCustom(High, Low, Close, Length);

DLine = SlowDCustom(High, Low, Close, Length);

If KLine Crosses Below DLine AND KLine > OerBought AND ,ine > OverBought and markctposition(O)—0 Then Degin Sell («Stch») This Bar on Close;

OpenPrice=cIose;

end;

if OpenPrice>0 then begin

if (OpenPrice-low)>=(FloorAmount/10000) and RiskTrailing- Switcher=0 then begin

RiskTrailingSwitcher=l;

max=OpenPrice-low;

end;

if RiskTrailingSwitcher=l then begin if OpenPrice-low>max then max=OpenPrice-low; if (OpenPrice-close)<=max*(] -RiskPercent/100) then begin

ExitShort («RT») this bar on close; OpenPrice=0;

RiskTrailingSwitcher=0;

max=0;

end;

end;

if OpenPrice-close>“(TakeProfit/10000) then begin ExitShort («ТР») this bar on close;

OpenPrice=0;

end;

if OpenPrice-close<=(-StopLoss/10000) then begin ExitShort («SL») this bar on closc;

OpenPrice=0;

end;

end;

Программный код «Risk Trailing»

Inputs: OpenPrice(l), _Date(0), _Timc(0), Dircction(«Buy»), Floor- Amount(20), RiskPercent(20), TakeProfit(60), StopLoss(30);

Variables: RiskTrailingSwitcher(O), max(O), ind(O);

if Direction=«Buy» and ind=0 then

if Паїс^Озіе*1000000 and _Time-Time[l jbuy this bar on close; ind-l;

end;

if Direction=«Sell» and ind=0 then

if Date=_Date+!000000 and _Тіте-Тіте[1]<ТітеТіте[Ц then begin

sell this bar on close; ind= 1;

end;

if marketposition(0)-l then begin

if (high-OpenPrice)>=(FloorAmount/10000) and RiskTrail- ingSwitcher=0 then begin

RiskT railingSwitcher= 1; max=high-OpcnPrice;

end;

if RiskTrailingSwitcher=l then begin if (high-OpenPrice)>max then max=high-OpenPrice; if (close-OpenPrice)<=max*(l-RiskPerceni/100) then

begin . t

ExitLong («RT_Long») this bar on close;

RiskTrailingS witcher=0;

max=0; end;

end;

if (close-Open Price) >=(Take Profit/10000) then begin ExitLong («TP_Long») this bar on close; RiskTrailingSwitcher=0; max=0;

end;

if (close-OpenPrice)<:=(-StopLoss/10000) then begin ExitLong («SL_Long») this bar on close; RiskTrailing$witcher=0; max=0;

end;

end;

if marketposition(0)=-l then begin

if (OpenPrice-low)>=(FloorAmount/10000) and RiskTrailing- Switchei-0 then begin

RiskTrailingSwitcher=l; max=OpenPrice~low;

end;

if RiskTrailingSwitcher—1 then begin if OpenPrice-low>max then max=Qpen Pricc-low; if (OpenPrice-clo$e)<=max,!'(I-RiskPercent/100) then

begin

ExitShort («RT_Sliort») this bar on close;

RiskTrailingSwitcher=0;

max=0;

end;

end;

if OpenPrice-close>=(TakeProfit/10000) then begin ExitShort («TP_Short») this bar on close; RiskTrailingSwitcher=0; max=0;

end;

if OpenPrice-close<=(-StopLoss/10000) then begin ExitShort («SL_Short») this bar on close; RiskTrailingSwitcher=0; max=0;

end;

end; Программный код «System2»

Inputs: Length( 14), OverBought(7Q), OverSold(30), TakeProfit(60), StopLoss(30), F!oorAmount(20), RiskPercent(40), Len_Trend(96), Lenjiigh(3), Up_Level(lO), Down_Level(-10);

Variables: KLine(O), DLine(O), OpenPrice(O), RiskTrailingSwitcher(O), max(O);

KLine = SlowKCustom(High, Low, Close, Length);

DLine = SlowDCustom(High, Low, Close, Length);

if TI(Len_Trend, Len_high)>=Up_Level then

If KLine Crosses Above DLine AND KLine < OverSold AND DLine < OverSold and marketposition(0)=0 Then begin

Buy («Stch_Up») This Bar on Close; OpenPrice=closc;

end;

if TI(Len_Trend, Len_high)<=Down_Level then

If KLine Crosses Below DLine AND KLine > OverBought AND DLine > OverBought and marketposition(0)=0 Then begin Sell («Stch_Dn») This Bar on Close;

OpenPrice=close;

end;

if TI(Len_Trend, LenJiigh)<=Up_Level and TI(Len_Trend, Len_high)>=Down_Level then begin

if marketposition(0)=:0 and KLine Crosses Above DLine AND KLine < OverSold AND DLine < OverSold then begin

Buy («Stch_Up2») This Bar on Close; OpenPrice^close;

end;

If KLine Crosses Below DLine AND KLine > OverBought AND DLine > OverBought and marketposition(0)=0 Then begin

Sell («Stch_Dn2») This Bar on Close; OpenPrice=close;

end;

end;

if OpenPrice>0 and marketposition(0)=l then begin

if (high-OpenPrice)>=(FloorAmount/10000) and RiskTrailing-

Switcher-0 then begin

RiskTrailingSwitcher= I; max=high-Open Price;

end;

if RiskTraiIingSwitcher= 1 then begin if (high-OpenPrice)>max then max=high-OpenPrice;

if (close-OpenPrice)<=max*(l-RiskPercent/100) then

begin

ExitLong <«RT_Up») this bar on close; GpenPrice—O;

RiskT railingSwitcher=0; max=0;

end;

end;

if (cIose-OpenPrice)>=(TakeProfit/10000) then begin ExitLong («TP_Up») this bar on close; OpenPrice=0;

RiskTrailingSwitcher=0; max—Q;

end;

if (close-OpenPrice)<=(-StopLoss/IOOOO) then begin ExitLong («SL_Up») this bar on close;

OpenPrice=();

RiskTrailingSwitcher=0;

niax=0;

end;

end;

if OpenPriceX) and marketposition(0)=M then begin

if (OpenPnce-low)>=(FloorAmount/10000) and RiskTrailing- Switcher—O then begin

RiskT railingSwitcher= 1; max=Open Price-low;

end;

if RiskTrailingSwitcher=l then begin if OpenPrice-low>max then

max=Open Price-close; if (OpenPnce-close)<=max*( l-RiskPercent/100) then

begin

ExitShort («RT,.Dn») this bar on close; OpenPrice=0;

Ri$kTraiIingSwitcher=0;

max=0;

end;

end;

if OpenPrice-closc>=(TakeProfit/lOOOO) then begin ExitShort («TP_Dn») this bar on close; OpenPrice=0;

RiskTraiIingSwiteher=0;

max=0;

end;

if OpenPrice-close<=(-StopLoss/lQOOO) then begin ExitShort («SL_Dn») this bar on close; OpenPrice=0;

RiskTrailingSwitcher=0;

max=0;

end;

end;

Программный код функции «ТІ»

Inputs: Len Trend(Numeric), Len_high(Numcric);

Variables: k(0), upj(0), downJ(O), move_up(Q), move_down(0), Trend(O), KjArray: up_peaks[200](0), down_peaks[200](0);

if currentbar>Len_high and currentbar<=Len_Trend then begin if mod(currentbar, 2)=Q then begin

if highest(((high+2*close)/3), Len_high-l)[I]-highest(((high+ +2*close)/3), Len__high) then

if highest(((high+2*cIose)/3), Len_high)<>up_peaks[upJ] then begin

upj=upj+l;

up_peaks[upJl=highest(((high+2*close)/3), Lenjiigh); end;

if Iowest(((low+2*cIose)/3), Len_high~I){l]=Iowest(((low-f2*clo- se)/3), Len_high) then

if Iowest(((low+2*close)/3), Len__high)<>down_peaks[downJ] then begin

down_j=downj+i;

down_peaks[downJ]=lowest(((low4-2*close)/3),

Len_high); end;

end;

if currentbar>Len_Trend then begin if mod(currenlbar, 2)—0 then begin

if highest(((high+2*close)/3), Len_high-1)[ 1 |=highest (((high+2*close)/3), Lenjhigh) then

if highest(((high+2*close)/3), Len_high)Oup_peaks[upJ] then begin

for k=l to upJ-l begin up_peaks[ k]=up_peaks [k+1 ]; end;

up_peaks[upJ) = highest(((high+2*close)/3), Len_high); end;

if lowest(((low+2*close)/3), Len_high-I)[l]=lowest(((low+2*close)/ 3), Len_high) then

if lowest(((k>w+2*close)/3), Len._higli)<>down_peaks[downJ] then begin

for k=l to down J-l begin down_peaks[ k]=down_peaks[k+1 ]; end;

down_pcaks[downJ]=lowest(((!ow+2*close)/3), Len_high); end;

end;

move_up=0;

move_down=0;

for k=2 to up_j begin

if up_peaks[k)>=up_peaks(k-1 ] then

move_up=move_up+upjDeaks[k]-up_peaks[k-l]; if up_j>eak.s[k|<=up_peaks[k-1 ] then

move_down=move_down*bup_peaks[kl-up_peaks|k“ 1 ];

end;

for k=2 to down J begin

if down_peaks[k]>=down_peaks[M] then

move__up=move_up+down_peaks[k|-down_peaks[k-l|; if riown_peaks[k]<=r1own_peaks[k-1 ] Then

move_down=move__down+down_j)eaks(k]-down_j)e-

aks[k-l);

end;

if (move_up-move_down)<>0 then

Trend=(move_up/(move_up-moYe_down));

TI=100*Trend-50;

end; Коды механических торговых систем для «Trade Station 2000>

Программный код «MovAvg2»

Inputs: Price(Close), FastLcn(9)> SlowLen(18), TakcProfit(50),

StopLoss(30);

Va 1 ue I = A ve rage (Price, Fast Len);

Value2=Average( Price, SlowLen);

If Current Bar > 1 then begin

if Value 1 crosses above Value2 and marketposition(0)=0 then buy («Buy») this bar on close; if Value 1 crosses below Value2 and markctposition(0)=0 then sell («Sell») this bar on elose; if marketposition(0)>0 then begin

if (close-EiitryPrice)>=(TakeProfit/10000) then Exit Long («ТР») this bar on close; if (close-EntryPrice)<=(-StopLoss/10000) then ExitLong («SL») this bar on elose;

end;

if marketposition(0)<0 then begin

if (EntryPnce-close)>=(TakeProfit/l0000) then ExitShort («ТР») this bar on close; if (EntryPrice-close)<=(-StopLoss/10000) then ExitShort («SL») this bar on close;

end;

end;

Программный код «MA+%SL»

Inputs: Price(Close), FastLen(9), SlowLen(18), TakeProfit(50), perccnt_SL(0.1);

Value i=Average( Price, FastLen);

Value2=Average(Price, SlowLen);

If CurrentBar > 1 then begin

if Valuel crosses above Value2 and marketposition(0)=0 then buy («Buy») this bar on close; if Valuel crosses below Value2 and maikctposition(0)=“0 then sell («Sell») this bar on close;

if marketposition(0)=0 then Value3=EntryPrice*pci‘cent_$L/lQO;

if marketposition(0)>0 (hen begin

if (close - Entry Price )> “(Take Profit/10000) then ExitLong («ТР») this bar on close; if (EntryPrice-close)>=Value3 then

ExitLong («SL») this bar on close;

end;

if marketposition(0)<0 then begin

if (EntryPrice-close)>=(Takc Profit/10000) then ExitShort («ТР») this bar on close; if (close-EntryPrice)>=Value3 then

ExitShort («SL») this bar on close;

end;

end;

Программный код «MA+AdVolSL»

Inputs: Price(Close), FastLen(9), SIowLen(18), TakeProftt(50), Len_Short(l4), Len„Long(96);

Value l=Average(Price, FastLen);

Value2=Average(Price, SlowLen);

If CurrentBar > 1 then begin

if Value 1 crosses above Value2 and marketposition(0)=0 then buy («Buy») this bar on close; if Value 1 crosses below Value2 and marketposition(0)=0 then sell («Sell») this bar on close; if marketposition(0)=0 then begin

Value3=VolatiIityStdDev(Len_Short); Value4=VolatilityStdDev(Len_Long); Value5=iff(Value3>Value4, Value3, Value4);

end;

if marketposition(0)>0 then begin

if (close-EntryPrice)>=(TakeProfit/10000) then ExitLong («ТР») this bar on close; if (EntryPrice-close^-ValueS then

ExitLong («SL») this bar on close;

end;

if marketposition(0)<0 then begin

if (EntryPrice-close)>=(TakeProfit/10000) then ExitShort («ТР») this bar on close; if (close-EntryPrice)>=Valuc5 then

ExitShort («SL») this bar on close;

end;

end;

Программный код «МА+SRLineSL»

Inputs: Price(Close), FastLen(9), SlowLen( 18), TakeProflt(50), Period(999), Len_high(4);

Variables: k(0), upj(0), downj(O), move_up(0), move_down(0}, trend(O);

Array: up_peaks[800J(0), down_peaksI800|(0);

Valuel=Average(Price. FastLen);

Value2=Average( Price, SlowLen);

if currencbar>l and currentbar<=Period then begin if mod(currentbar, 2)=0 then begin if highest(((high+2*close)/3), Len_high-1)[ 11= =highest(((high+2*close)/3), Len_high) then

if highest(((high+2*close)/3), Len_high)<> <>up_pcaks(upJl then begin upj=upj+l;

up_peaks(upJ)=highest(((high+2*close)/3), Len_high); end;

if lowest(((low+2*close)/3), Lenjhigh-1)[ 11= =lowest(((lo\v+2*close)/3), Len_high) then

if lowest((()ow+2*close)/3), Lenjiigh)<> <>down_peaks[downJ] then begin downj-down J+l;

down_peaks[downJl=lowest(((low+2*close)/3),

Len_high);

end;

end;

end;

if currentbar>Period then begin

if mod(currentbar, 2)=0 then begin

if highest(((high+2*close)/3), Lenjhigh-l>f l]=high- est(((high+2*close)/3), Len_high) then if highest(((liigh+2*close)/3), Len_high)<>up_peaks|up_J} then begin for k=l to up_j-l begin up_peaks[k|=up_peaks|k+l|; end;

up_peaks[upj|—highest(«high+2*close)/3),

Len_high);

end;

if lowest(((low+2*close)/3), Len_high-l)| 1 ) = =lowest«{low+2*close)/3h Len_high) then

if lowest(((low+2*close)/3), Len_high)<> <>down__peaks[downJ] then begin

for k=l to down J-1 begin down_peaks[k] =down_peaks[ k+1); end;

down_peaks[down_j]=ilowest(((low+2*close)/3h

Len._high);

end;

end;

end;

If CurrentBar > Period then begin

if Valuel crosses above Value2 and marketposihon(0)=0 then buy («Buy») this bar on close; if Valuel crosses below Value2 and marketposition(0)=0 then sell («Sell») this bar on close: if marketposition(0)>0 then begin

Value3=AbsValue(up_peaks[ 11-Entry Price); VaIue4=:AbsValue(down_peaks| 11 - Entry Price); for k=2 to up_j begin

if up_peaks[k|end;

for k~2 to downj begin if down_pcaks[k]end;

VaIue5=(VaIue3+Value4)/2; if (close-EntryPrice) >=Take Profit/10000 then ExitLong («ТР») this bar on close; if close<=(EntryPrice-Value5) then

ExitLong («SL») this bar on close;

end;

if marketposition(0)<0 then begin

V?lue3=AbsValue(upjpeaks[l]-EatryPrice); V&lue4=AbsValue(down_peaks[ l]-EntryPrice); for k=2 to upj begin

if up_peaks[k]for k=2 to downj begin if down_peaks[k]Value5=(Value3+Value4)/2; if (EntryPrice-close)>=(TakeProfit/10000) then ExitShort («ТР») this bar on close; if close>=(EntryPrice'bValue5) then

ExitShort («SL») this bar on close;

end;

end;

Программный код «МА+ChannelSL»

Inputs: Price(Close), FastLen(9), SlowLen(18), TakeProfit(50), Period(14);

Value 1 =Average(Price, FastLen);

Value2=Average(Price, SlowLen);

If CurrentBar > 1 then begin

if Value 1 crosses above Value2 and marketposition(0)=0 then buy («Buy») this bar on close; if Value 1 crosscs below Value2 and marketposition(0)=0 then sell («Sell») this bar on close; if marketposition(0)>0 then begin

Value3=Lowest(Price, Period)! 1]; if (close-EntryPrice)>=(TakePrcfit/10000) then ExitLong («ТР») this bar on close; if closeExitLong («SL») this bar on close; if marketposition(0)<0 then begin

Value4-highest(Price, Period)[і]; if (EntryPrice-close)>=(TakeProfit/10000) then ExitShort («ТР») this bar on close; if close>Value4 then

ExitShort («SL») this bar on close;

end;

end;

<< | >>
Источник: Рычков В. В.. Теория и практика работы на российском рынке акций. Самоучитель игры на бирже. 2-е изд., испр. и доп. — М.: ЗАО «Олимгг—Бизнес». — 320 с.: ил.. 2005

Еще по теме Начало работы с программой:

  1. 3.1. Начало работы .
  2. I. Начало работы
  3. Глава 11 Начало работы с Palmolive
  4. Начало работы Чикагской биржи опционов (СВОЕ)
  5. Программы выдвижения предложений и улучшения работы
  6. 5. Информационные материалы по работе с программой QUIK
  7. Принцип работы программ автоматизации финансового анализа
  8. 4.4. Моделирование и оптимизация механизма формирования программ повышения эффективности работы нефтеперерабатывающего предприятия
  9. КАК РАЗМЕСТИТЬ ИНФОРМАЦИЮ В ПРОГРАММЕ ИНТЕРНЕТ-ТРЕЙДИНГА (НА ПРИМЕРЕ ПРОГРАММЫ «АТОН-ЛАЙН»)
  10. ПРОГРАММЫ ДЛЯ ЭВМ (КОМПЬЮТЕРНЫЕ ПРОГРАММЫ)
  11. НАЧАЛО (ОТКРЫТИЕ) ТРЕНИНГА
  12. ГЛАВА 5 Россия индустриальная : начало
  13. 8.3. Начало аренды
  14. Начало беседы
  15. Неудачное начало
  16. Начало кризиса
  17. Начало «хаоса»
  18. Превосходное начало