Логотип Парус Инвестора
Парусник
Цена деления цифровой шкалы
Системы и стратегии

Учебник по языку программирования Easy Language
Понятие Встроенных Стопов

Стопы - торговые сигналы выхода, которые - не рыночные управляются; они выводят Вас из рынка на основании приемлемого для Вас уровня риска и желаемой нормы прибыли. В TradeStation доступны шесть встроенных стопов (торговых сигналов), которые написаны с использование определенных зарезервированных слов. Встроенные стопы уникальны, поскольку зарезервированные слова, которые они используют, пересчитываются на каждом тике, а не при закрытии бара. Другими словами, они активизируются на входном баре и обновляются на каждом баре позиции потиково (от тика к тику). Все другие команды EasyLanguage, которые Вы записываете сами, рассчитываются только на закрытии бара.

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

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

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

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


SetBreakEven

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


Синтаксис:

SetBreakEven (FloorAmnt)

Параметры:

FloorAmnt - количество прибыли, которое будет достигнуто прежде, чем будет размещен ордер выхода.


Примечания:

Используется с SetStopContract или SetStopPosition.


Торговый сигнал:

Breakeven Stop-Floor (Стоп на уровне безубыточности) - когда прибыль (для позиции или единичной акции/контракта) превышает уровень безубыточности - генерируется ордер выхода. Ордер выхода - стоп-приказ, размещенный по входной цене (средняя цена на вход при нескольких входах) плюс комиссионные, указанные на вкладке Costs при форматировании стратегии.

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

Breakeven Stop-Floor торговый сигнал только вступает в силу, как только достигнуто заданное количество прибыли. Поэтому, Вы не должны использовать его для ограничения убытков.


SetExitOnClose

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


Синтаксис:

SetExitOnClose

Торговый сигнал:

Close at End of Day (Закрытие в конце дня) - Торговый сигнал The Close at End of Day не имеет никаких параметров. Он дает команду на закрытие всех открытых позиций в момент закрытия дневной сессии. Это особенно полезно для внутридневных трейдеров, которые не хотят иметь открытых позиций до начала следующего рабочего дня.


SetDollarTrailing

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


Синтаксис:

SetDollarTrailing (DollarValue)

Параметры:

DollarValue - количество максимальной открытой (достигнутой в данной позиции) прибыли, которое Вы можете потерять.


Примечания:

Используется с SetStopContract или SetStopPosition.


Торговый сигнал:

Dllr Risk Trailing (Скользящий долларовый риск) - Торговый сигнал Dllr Risk Trailing позволяет Вам указывать максимальную сумму денег, которой Вы желаете рисковать на позицию, основанной на максимальной (достигнутой) прибыли открытой позиции. Максимальная прибыль рассчитывается от точки входа, с использование наивысшей из максимальных цен для длинной позиции, и наименьшей из минимальных цен для короткой позиции. Сумма долларовой прибыли для единичного контракта или позиции, которой Вы желаете рискнуть, вычитается из полученного значения и скользящий стоп размещается в этой точке.

Например, предположим, что скользящий долларовый риск установлен на 500 $. Защитный стоп был бы размещен в точке максимальной прибыли минус 500 $. Если сумма, который Вы желаете рискнуть, больше чем максимальная прибыль открытой позиции, то такой скользящий стоп не вступает в силу.

Следовательно, торговый сигнал Dllr Risk Trailing только фиксирует прибыль; он не дает команду на закрытие позиции, если Вы торгуете с убытком. Поэтому, Вы не должны использовать его для ограничения потерь.


SetPercentTrailing

Это зарезервированное слово используется, чтобы определить часть (процент) от максимальной прибыли открытой позиции, который Вы можете себе позволить потерять (как процент) по достижении некоторого уровня прибыли, который должен быть достигнут для того, чтобы стоп вступил в силу. Позиция или единичная акция/контракт закрывается, когда указанный процент от достигнутой максимальной прибыли потерян.


Синтаксис:

SetPercentTrailing(FloorAmnt, Amount)

Параметры:

FloorAmnt - сумма прибыли, которая будет достигнута прежде, чем стоп вступает в силу. Amount - процент от прибыли, которую Вы можете позволить потерять.


Примечания:

Используется с SetStopContract или SetStopPosition.


Торговый сигнал:

Percent Risk Trailing (Скользящий процентный риск) - торговый сигнал Percent Risk Trailing дает возможность Вам указать, какой процент от максимальной достигнутой прибыли позиции Вы можете себе позволить отдать прежде, чем позиция будет автоматически закрыта. Также требует, чтобы был обеспечен минимальный уровень прибыли, который должен быть достигнут позицией прежде, чем стоп вступит в силу.

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

Например, предположите, что Percent Risk Trailing Стоп помещен в 20 % с уровнем 500 $. Как только прибыль превысит значение уровень 500 $, стоп станет активным. Стоп размещается в точке 80% от максимальной прибыли, достигнутой позицией до настоящего времени.

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


SetProfitTarget

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


Синтаксис:

SetProfitTarget (DollarValue)

Параметры:

DollarValue - сумма прибыли, при достижении которой позиция закрывается.


Примечания:

Используется с SetStopContract или SetStopPosition.


Торговый сигнал:

Profit Target (Ориентир прибыли) - торговый сигнал Profit Target дает возможность Вам автоматически закрыть Ваши позиции при достижении некоторого уровня прибыли. Если этот уровень прибыли не достигнут, то стоп не вступит в силу. Этот стоп фиксирует прибыль, но не ограничивает потери.


SetStopLoss

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


Синтаксис:

SetStopLoss (DollarValue)

Параметры:

DollarValue - сумма, которую Вы можете потерять на позицию или акцию/контракт.


Примечания:

Используется с SetStopContract или SetStopPosition.


Торговый сигнал:

Stop Loss

Торговый сигнал Stop Loss дает возможность Вам определить максимальную сумму денег, которой Вы желаете рисковать на любой позиции или на любой акции/контракте.

Например, если Вы определяете Stop Loss в 500 $ на S&P 500, TradeStation автоматически выходят из полной позиции, когда потери позиции достигают 500 $.

Торговый сигнал Stop Loss (Ограничение убытков) никогда не должен использоваться как единственный выход, который использует ваша торговая стратегия, поскольку для этого сигнала требует, чтобы позиция потеряла деньги перед тем, как выйти из торговли.

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


SetStopContract

Это зарезервированное слово используется, чтобы указать, что стоп применяется для акции/контракта. Если ни одно из слов SetStopContract или SetStopPosition не используются, то стоп оценивается на основании позиции.


SetStopPosition

Это зарезервированное слово используется, чтобы указать, что стоп применяется для полной позиции. Если ни одно из слов SetStopContract или SetStopPosition не используются, то стоп оценивается на основании позиции.

Запись Индикаторов и Изучений

Индикаторы и изучения (studies) отображают информацию на графике движения цен. Самое общее определение индикатора - математическая формула, которая возвращает число для каждого бара на диаграмме, в конечном виде изображенная как строка, гистограмма, или ряд точек.

Изучения - во многом подобны индикаторам, за исключением того, что они имеют определенное встроенное форматирование. Изучения, доступные Вам в TradeStation - ShowMe, PaintBar, ProbabilityMap и ActivityBar.

В этом разделе обсуждается, как записать индикаторы изучения (ShowMe, PaintBar, ProbabilityMap и ActivityBar).


Запись Индикаторов

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



Вы можете даже форматировать свойства индикатора, чтобы отобразить его график баров. Например, в случае индикатора с тремя графиками, типа Moving Average Indicator (Индикатора Скользящего среднего) с 3 линиями, Вы можете форматировать индикатор и устанавливать один график как bar high, другой как bar low, а третий как right tick.



Для получения подробной информации относительно форматирования индикаторов, обратитесь к Интерактивному Руководству Пользователя.

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

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


PlotN(Expression, "", ForeColor, BackColor, Width)

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


Синтаксис:

PlotN(Expression [,"" [,ForeColor [,BackColor, [,Width]]]]);

Параметры:

N - номер между 1 и 4; представляет один из четырех доступных графиков. Expression - числовое значение, составляющее график; - название графика. ForeColor - цвет EasyLanguage, используемый для графика (упоминается также, как PlotColor); BackColor определяет цвет фона (используется только с окнами OptionStation Position Analysis и RadarScreen), и Width - числовое значение, представляющее ширину графика. Параметры , ForeColor, BackColor и Width являются дополнительными.

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


Примечания:

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


Пример:

Любой или несколько дополнительных параметров могут быть опущены, пока нет других параметров справа. Например, параметры BackColor и Width могут быть исключены из инструкции следующим образом:

    Plot1 (Volume, "V", Red);

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


Неправильно:

Plot1(Volume, Black, White, 2);

Правильно:
Plot1(Volume, "V", Black, White, 2);

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

Plot1(Volume);

Когда никакое название графика не определено, EasyLanguage использует Plot1, Plot2, Plot3, или Plot4 как названия для каждого графика. Первый график называют Plot1, второй Plot2, и так далее.

При обращении к цвету графика или ширине, Вы можете использовать слово Default вместо параметра(ов), чтобы иметь инструкцию Plot, использующую цвет по умолчанию и/или ширину, выбранную на вкладке Properties диалогового окна Format indicator.

Например, следующая инструкция отобразит объем в цвете по умолчанию, но определяет конкретную ширину:

Plot1 ( Volume, "V", Default, Default, 3);

Повторяем, Вы можете использовать слово Default для параметров цветов или параметра ширины.

Один и тот же график (т.е., Plot1, Plot2) может использоваться более чем один раз в методике анализа; единственное требование - чтобы Вы использовали то же самое название графика в обоих образцах инструкции Plot. Если никакое название не назначено, то используется заданное по умолчанию название графика (т.е., Plot1, Plot2).

Например, если Вы хотите составить график изменения сети, используя красный цвет как отрицательный и зеленый, как положительный, Вы можете использовать тот же самый номер графика (в нашем случае Plot1) дважды - лишь бы он был тем же самым:

Value1 = Close - Close[1];
If Value1 > 0 Then
Plot1( Value1, "NetChg", Green )
Else
Plot1 ( Value1, "NetChg", Red );

В этом примере, название графика "NetChg" должно быть одинаковым обоих образцах инструкции Plot.

Заметьте: Как только Вы определили график, используя зарезервированное слово PlotN, Вы можете ссылаться на значение графика, просто используя зарезервированное слово PlotN. В примере ниже, зарезервированное слово Plot1 используется, чтобы составить график распределения накопления объема. На значение графика ссылаются в следующей инструкции, чтобы записать критерии предупреждения alert:

    Plot1 (AccumDist (Volume), "AccumDist");
    If Plot1 > Highest (Plot1, 20) then Alert ;


SetPlotColor(Number, Color)

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


Синтаксис:

SetPlotColor (Number, Color);

Параметры:

Number - номер от 1 до 4 представляет номер графика для изменения. Color - цвет EasyLanguage, который используется для графика.

Для получения списка доступных цветов обратитесь к Приложению B этой книги.


Пример:

Следующие инструкции EasyLanguage окрашивают график в красный цвет, когда RSI Индикатор находится выше 75, и зеленым - когда он ниже 25:

Plot1 (RSI (Close, 9), "RSI");
SetPlotColor (1, Default);
If Plot1 > 75 Then
SetPlotColor (1, Red);
            If Plot1 < 25 Then
SetPlotColor (1, Green);

В этом примере RSI Индикатор имеет три возможных цвета: красный, когда его значение более чем 75, зеленый, когда его значение меньше чем 25, и цвет по умолчанию, когда его значение между 25 и 75. Если бы Вы отрегулировали только два цвета: один для значений более чем 75, и второй для значений менее чем 25, то оставшиеся значения между 25 и 75 имели один из двух цветов (который был отрегулирован последним).

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

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

Plot1 (RSI (Close, 9), "RSI", Default);
If Plot1 > 75 Then
SetPlotColor (1, Red);
If Plot1 < 25 Then
SetPlotColor (1, Green);


SetPlotWidth(Number, Width)

Это зарезервированное слово регулирует ширину указанного графика.


Синтаксис:

SetPlotWidth (Number, Width);

Параметры:

Number - номер от 1 до 4 представляет номер графика для изменения. Width - EasyLanguage ширина, которая используется для графика.

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


Пример:

Следующие инструкции EasyLanguage изменяют ширину графика к более толстой линии, когда Индикатор Импульса - более чем 0, и к более тонкой линии, когда он находится под 0:

Plot1 (Momentum (Close, 10), "Momentum");
If Plot1 > 0 Then
    SetPlotWidth (1, 4);
If Plot1 < 0 Then
SetPlotWidth (1, 1);

В этом примере, Индикатор Импульса имеет два возможных размера: более толстый, при значениях более чем 0, и более тонкий, когда значения - ниже 0. Однако, в некоторых случаях Вы можете пожелать, чтобы индикатор имел три или больше возможных размера. Пожалуйста, обратитесь к примеру для предыдущего зарезервированного слова SetPlotColor, для получения дополнительных разъяснений использования зарезервированного слова SetPlotWidth.


Определение Доступности Индикаторов

Когда Вы создаете индикатор в EasyLanguage PowerEditor, Вы запрашиваете определенное окно (например, график движения цен, окно OptionStation Position Analysis, окно RadarScreen) о доступности вашего индикатора. Под доступным мы подразумеваем, что индикатор будет в библиотеке индикаторов, когда Вы выбираете индикатор для вставки в приложение.

Для получения информации относительно определения приложений, для которых ваш индикатор является доступным, обратитесь к Интерактивному Руководству Пользователя.




Содержание (Contents)
ГЛАВА 1: Введение
Что такое EasyLanguage?
Что Вы можете Создать?
Дополнительные Ресурсы
ГЛАВА 2: Основные Элементы EasyLanguage
Как работает EasyLanguage
О Языке
Ссылка на Ценовые Данные
Выражения и Операторы
Ссылка на Предыдущие Значения
Управление Датами и Временем
Использование Переменных
Использование Констант
Управляющие структуры EasyLanguage
Запись Предупреждений
Понятие Массивов
Понятие Функций Пользователя
Методы Вывода
Текстовый Объект на Ценовых Диаграммах
Trendlines на Ценовых Диаграммах
Понятие Полей Данных
Мультимедиа и EasyLanguage
ГЛАВА 3: EasyLanguage для TradeStation
Запись Торговых Сигналов
Механизм Тестирования Торговой Стратегии
Торговые Приказы
Понятие Встроенных Стопов
Запись Индикаторов и Изучений
Запись ShowMe и PaintBar
Запись ProbabilityMap
Запись ActivityBar
ГЛАВА 4: EasyLanguage для RadarScreen
Запись Индикаторов RadarScreen
Запись Индикаторов для Супердиаграмм SE
Определение Доступности Индикаторов
ГЛАВА 5: EasyLanguage для OptionStation
Анализ данных OptionStation
Чтение Данных OptionStation
Запись Индикаторов OptionStation
Запись Индикаторов для Супердиаграмм SE
Запись Поиска Стратегий
Запись Моделей OptionStation
Глобальные переменные OptionStation
ГЛАВА 6: EasyLanguage и Другие Языки
Определение Функции DLL
Использование Функций DLLs
Дополнительно О EasyLanguage DLL Extension Kit
ПРИЛОЖЕНИЕ 1. Синтаксические ошибки EasyLanguage
61 - 223
224 - 307
308 - 569
ПРИЛОЖЕНИЕ 2. Цвета, Размеры и Коды EasyLanguage




На правах рекламы:
Светильники Bega ; ip камеры видеонаблюдения уличные смотреть подробнее