|
|
 |
|
 |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14
RSI (Close, 14) < RSI (Close, 20) [ 1]; Функция RSI, основанная на Завершении прошлых 14 бар Относительный Оператор: Меньше чем Функция RSI, основанная на Завершении прошлых 20 бар Один бар назад Писать полное правило, просто включаются в условиях, где текст был бы: Condition1 = Average(Close,10) > Average(Close,8); Condition2 = RSI(Close,14) < RSI(Close,20)[1]); If Condition1 and Condition2 then buy at close + 1 point stop; Это означает, что, если оба из вышеупомянутых утверждений истинны, то система произведет buy ордер. Если пользователь хотел sell ордер с теми же самыми правилами, но полностью изменял, им, или она будет писать следующее: Condition1 = Average(Close,10) > Average(Close,8); Condition2 = RSI(Close,14) < RSI(Close,20)[1]); Condition3 = Average(Close,10) < Average(Close,8); Condition4 = RSI(Close,14) > RSI(Close,20)[1]; If Condition1 and Condition2 then buy at close + 1 point stop; If Condition3 and Condition4 then sell at close – 1 point stop; ИСПОЛЬЗОВАНИЕ INPUTS Другие значения могут быть заменены Завершения типа Low, High, Open, Range, Volume, и т.д. также как уравнений. Когда пользователь не уверен, какие значения использовать для длины средних числ и RSI, EasyLanguge использует особенность названную inputs. Эта особенность позволяет пользователю входить в один номер в систему “владельца”, но позже, при применении и оптимизации ваших систем, это позволяет пользователю изменятьте без того, чтобы иметь необходимость изменять исходный код, который уже был написан. Предположите, что пользователь хотел различную длину для каждой из длин в системе, используемой в предыдущем примере. Процедура была бы следующие. Inputs: Length1(10), Length2(8), Length3(14), Length4(20), Length5(10), Length6(8), Length7(14), Length8(20); Inputs: является декларацией inputs, которая должна предшествовать всем различным inputsу. Каждый inputs должен иметь различное имя в пределах системы или изучать, и содержать значение неплатежа inputs в пределах круглых скобок направо от названия(имени) inputs. Каждый inputs тогда отделяется с запятой. Inputs тогда используются в формулировках: Condition1=Average(Close,Length1)> Average(Close,Length2); Condition2=RSI(Close,Length3) < RSI(Close,Length4)[1]); Condition3=Average(Close,Length5) < Average(Close,Length6); Condition4=RSI(Close,Length7) > RSI(Close,Length8)[1]; If Condition1 and Condition2 then buy at open +1 point stop; If Condition3 and Condition4 then sell at close – 1 point stop; Когда эта система применяется к диаграмме, это дает пользователю способность, чтобы заменить различные значения для каждой длины, которая позволяет оптимизацию всех стоимостей(значений) против друг друга. ИСПОЛЬЗОВАНИЕ ЗНАЧЕНИЙ Другая возможная замена должна урегулировать специфический номер к переменной значению . Переменные Значения – подобно условным переменным, в этом они хранят результаты вычисления. Однако, где результаты, запасенные в условном переменный истинны или ложны только, результаты, запасенные в значении переменный числовые только. EasyLanguge обеспечивает, 100 неплатежа оценивает переменные имена, Value0 – Value99. (Известите, что не имеется никакого места между названием(именем) и номером ссылки(рекомендации).) В следующем примере, ” 1 пункт(точка) ” назначен к значению) переменный Value1. Способность, чтобы передать значения, чтобы оценить переменные экономит(спасает) пользователя время и усилие, потому что скорее чем необходимость повторно напечатать значение непрерывно, он или она просто assign значение к значению) переменный однажды в начале Легкого текста Языка и затем использует значение, переменную повсюду текста. Inputs: Length1(10), Length2(8), Length3(14), Length4(20), Length5(10), Length6(8), Length7(14), Length8(20); Value1 = 1 point; Condition1 = Average(Close,Length1) > Average(Close,Length2); Condition2 = RSI(Close,Length3) < RSI(Close,Length4)[1]); Condition3 = Average(Close,Length5) < Average(Close,Length6); Condition4 = RSI(Close,Length7) > RSI(Close,Length8)[1]; If Condition1 and Condition2 then buy at open + Value1 stop; If Condition3 and Condition4 then sell at close – Value1 stop; Следующее – еще несколько примеров использования условных и оценивает переменные. Предположите, что пользователь хочет, чтобы система разместила ордер , или на long или short стороне, если это – в понедельник или пятница, и этот ордер должен разместиться на следующем open день. Inputs: Length1(10), Length2(8), Length3(14), Length4(20), Length5(10), Length6(8), Length7(14), Length8(20); Value1=1 point; Condition1=Average(Close,Length1)> Average(Close,Length2); Condition2=RSI(Close,Length3) < RSI(Close,Length4)[1]); Condition3=Average(Close,Length5) < Average(Close,Length6); Condition4=RSI(Close,Length7) > RSI(Close,Length8)[1]; If Condition1 and Condition2 and DayofWeek(Date) =1 or DayofWeek(Date)=5 then buy at open + Value1 stop; If Condition3 and Condition4 and DayofWeek(Date) =1 or DayofWeek(Date)=5 then sell at close – Value1 stop; Все эти инструкции могут быть написаны как одна система с “и” между каждым отдельным правилом. ИСПЫТАНИЕ НОВЫХ ИДЕЙ Много раз торговцы хотят войти в рынок только, если некоторые цены или studies пересекли некоторые уровни 2, 3, 4 или намного больше времен. EasyLangugeпозволяет этому быть выполненным в очень просто через устройство названное встречным. Предположите, что пользователь хочет покупать, когда RSI пересекся по 80, покупают зону, выравнивают 5 раз в течение 25 периода бары. В этом случае, программа будет должна быть способной оценить сколько раз RSI, пересек ту линию. Чтобы делать это, пользователь использовал бы встречный, как показано в следующем примере. If RSI(Close,25) crosses above 80 then Value1 = Value1 + 1; If Value1=5 then begin Buy tomorrow at open + 1 Point stop; Value1=0; end; Выполненым, вышеупомянутый сигнал означает следующее: RSI (Close, 25) … значение RSI, основанная на закрывается прошлых 25 бар . Пересечения выше … указывают, что значение ” пересекла вышеупомянутый ” значение, в этом случае покупающуюся зональную линию. 80 … покупают зональную значение линии. Value1 = Value1 + 1 … Value1 встречный, и в этом примере, увеличивается 1, каждый раз пересечения RSI выше 80 покупают зональную линию. Однажды Value1 достигает 5, система исполнит указанное действие, который в этом случае, – производят покупающийсяордер . Если От Value1 до 5 тогда покупают завтра в open + 1 остановку пункта(точки); … однажды От Value1 до 5, программа разместит покупающийсяордер относительно open из завтра и заполнит(выполнит) это если повышение цен один пункт(точка) выше open. От Value1 до 0; … после От Value1 до 5 и действие имел место, Value1 повторно урегулирован к нолю. Испытание Другой Идеи Предположите, что пользователь хочет разместить покупающийсяордер , когда 10-дневный RSI пересекает выше 14-дневный Случайные 3 раза, и размещать пsell ордер , когда 10-дневный RSI пересекает ниже 14-дневный Случайные 4 раза. Чтобы делать так, пользователь может писать следующие Легкие утверждения Языка: Condition1 = RSI(Close, 10) crosses above SlowD(14); Condition2 = RSI(Close,10) crosses below SlowD(14); If Condition1 then Value1 = Value1 + 1; If Value1 = 3 then begin Buy today at close; Value1 = 0; end; If Condition2 then Value2 = Value2 + 1; If Value2 = 4 then begin Sell today at close; Value2 = 0; end; Выполненым, эти инструкции означают следующее: Condition1 = RSI(Close, 10) crosses above SlowD(14); Condition2 = RSI(Close,10) crosses below SlowD(14); Письмо таких правил как условные переменные делает письмо системы, значительно более легкой и более чистой. Когда RSI пересекается выше SlowD, Condition1 = Истинный; и когда RSI пересекается ниже SlowD, Condition2 = Истинный. If Condition1 then Value1 = Value1 + 1; If Value1 = 3 then begin Buy today at close; Value1 = 0; end; Каждый раз результат Condition1 Истинен, в этом случае Value1, приращения 1; и каждый раз результат Condition2 = Истинный, встречный, в этом случае Value2, также приращения 1. Однажды любой встречный достигает 3, указанное действие выполнено. Как только действие выполнено, встречный повторно урегулирован к нолю. If Condition2 then Value2 = Value2 +1; If Value2 = 4 then begin Sell today at close; Value2 = 0; end; Переменные Значения – полезные инструменты при письме различных типов систем и-или studies. Ниже – дополнительные примеры переменные ценный. Value1 = 2 * H; Value2 = Average(RSI(Close,14),10) – Average(RSI(Close,10),10); Value3 = 50 points; Value4 = High – Low + (Range[1] *.5); Имейте в виду, что переменные значения могут только хранить числовые выражения, то есть выражения, которые кончаются числовой стоимостью(значением). Они не могут хранить Истинные / ложные выражения. СОЗДАНИЕ ФУНКЦИЙ, СПОМОЩЬЮ EASYLANGUGE
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
|
|
|
|
|
|
|
|
|
|