커뮤니티
수식수정 부탁 드립니다.
2009-04-03 16:24:34
882
글번호 21445
안녕하세요?
TS 수식인데 YT로 바꾸고 싶습니다.
{Thrust Count Completion}
LTR = LThrust = TCount AND NewLThrust;
STR = SThrust = TCount AND NewSThrust;
이 부분이 특히 어려운데 가능하시면 설명까지 부탁드리고 싶습니다.
좋은 주말 보내세요!
Inputs: ChanLen(40), Reaction(4), TCount(2), Setup(4);
Vars: HiChan(0), LoChan(0), LReaction(0), LReacHigh(0), LReacLow(0), SReaction(0), SReacHigh(0), SReacLow(0), LThrust(0), SThrust(0), LEntry(0), LExit(0), SEntry(0), SExit(0), NewLThrust(False), NewSThrust(False), LTR(False), STR(False);
{Assignment of values for the High/Low Channel}
HiChan = Highest(High, ChanLen)[1];
LoChan = Lowest(Low, ChanLen)[1];
{Reversal Breakout - Initial Setup}
IF MarketPosition <> 1 Then Begin
IF High > HiChan Then Begin
LReaction = 1;
LReacHigh = High;
LReacLow = Low;
LExit = LReacLow;
LThrust = 0;
SReaction = 0;
End;
End
Else Begin
LReaction = 0;
LThrust = 0;
End;
{Reversal Breakout - Initial Setup}
IF MarketPosition <> -1 Then Begin
IF Low < LoChan Then Begin
SReaction = 1;
SReacHigh = High;
SReacLow = Low;
SExit = SReacLow;
SThrust = 0;
LReaction = 0;
End;
End
Else Begin
SReaction = 0;
LThrust = 0;
End;
{Upward Trend Resumption}
IF LReaction >= 1 Then Begin
IF Low < LExit Then Begin
LExit = Low;
LThrust = 0;
End;
IF High < LReacHigh AND Low < LReacLow Then Begin
LReaction = LReaction + 1;
LReacHigh = High;
LReacLow = Low;
NewLThrust = True;
End;
End;
{Downward Trend Resumption}
IF SReaction >= 1 Then Begin
IF High > SExit Then Begin
SExit = High;
SThrust = 0;
End;
IF Low > SReacLow AND High > SReacHigh Then Begin
SReaction = SReaction + 1;
SReacLow = Low;
SReacHigh = High;
NewSThrust = True;
End;
End;
{Bullish Thrust Day accumulation}
IF LReaction >= Reaction AND Close > High[1] Then
LThrust = LThrust + 1;
{Bearish Thrust Day accumulation}
IF SReaction >= Reaction AND Close < Low[1] Then
SThrust = SThrust + 1;
{Thrust Count Completion}
LTR = LThrust = TCount AND NewLThrust;
STR = SThrust = TCount AND NewSThrust;
{Entry Price Setup}
IF LTR Then Begin
LEntry = High + 1 Point;
NewLThrust = False;
End;
IF STR Then Begin
SEntry = Low - 1 Point;
NewSThrust = False;
End;
{Entries}
IF MRO(LTR, Setup, 1) <> -1 Then
Buy Next Bar at LEntry Stop;
IF MRO(STR, Setup, 1) <> -1 {AND SReaction >= Reaction} Then
Sell Next Bar at SEntry Stop;
{Exits}
IF LReaction = 0 Then
ExitLong Next Bar at LExit Stop;
IF SReaction = 0 Then
ExitShort Next Bar at SExit Stop;
답변 1
예스스탁 예스스탁 답변
2009-04-03 17:21:05
안녕하세요
예스스탁입니다.
TS에서는 A와 B가 같다를 =로 표현하고
예스랭귀지에서는 A == B로 표현합니다.
LTR = LThrust = TCount AND NewLThrust;
LThrust 는 Tcount값과 같고 NewLThrust가 참일때
STR = SThrust = TCount AND NewSThrust;
SThrust 는 Tcount값과 같고 NewSThrust가 참일때
입니다.
아래는 수정한 식입니다.
즐거운 하루되세요
Inputs: ChanLen(40), Reaction(4), TCount(2), Setup(4);
Vars: HiChan(0), LoChan(0), LReaction(0), LReacHigh(0), LReacLow(0),
SReaction(0), SReacHigh(0), SReacLow(0), LThrust(0), SThrust(0),
LEntry(0), LExit(0), SEntry(0), SExit(0),
NewLThrust(False), NewSThrust(False), LTR(False), STR(False);
#{Assignment of values for the High/Low Channel}
HiChan = Highest(High, ChanLen)[1];
LoChan = Lowest(Low, ChanLen)[1];
#{Reversal Breakout - Initial Setup}
IF MarketPosition <> 1 Then Begin
IF High > HiChan Then Begin
LReaction = 1;
LReacHigh = High;
LReacLow = Low;
LExit = LReacLow;
LThrust = 0;
SReaction = 0;
End;
End
Else Begin
LReaction = 0;
LThrust = 0;
End;
#{Reversal Breakout - Initial Setup}
IF MarketPosition <> -1 Then Begin
IF Low < LoChan Then Begin
SReaction = 1;
SReacHigh = High;
SReacLow = Low;
SExit = SReacLow;
SThrust = 0;
LReaction = 0;
End;
End
Else Begin
SReaction = 0;
LThrust = 0;
End;
#{Upward Trend Resumption}
IF LReaction >= 1 Then Begin
IF Low < LExit Then Begin
LExit = Low;
LThrust = 0;
End;
IF High < LReacHigh AND Low < LReacLow Then Begin
LReaction = LReaction + 1;
LReacHigh = High;
LReacLow = Low;
NewLThrust = True;
End;
End;
#{Downward Trend Resumption}
IF SReaction >= 1 Then Begin
IF High > SExit Then Begin
SExit = High;
SThrust = 0;
End;
IF Low > SReacLow AND High > SReacHigh Then Begin
SReaction = SReaction + 1;
SReacLow = Low;
SReacHigh = High;
NewSThrust = True;
End;
End;
#{Bullish Thrust Day accumulation}
IF LReaction >= Reaction AND Close > High[1] Then
LThrust = LThrust + 1;
#{Bearish Thrust Day accumulation}
IF SReaction >= Reaction AND Close < Low[1] Then
SThrust = SThrust + 1;
#{Thrust Count Completion}
LTR = LThrust == TCount AND NewLThrust;
STR = SThrust == TCount AND NewSThrust;
#{Entry Price Setup}
IF LTR Then Begin
LEntry = High + 1 ;
NewLThrust = False;
End;
IF STR Then Begin
SEntry = Low - 1 ;
NewSThrust = False;
End;
#{Entries}
IF MRO(LTR, Setup, 1) <> -1 Then
Buy("b",AtStop,LEntry);
IF MRO(STR, Setup, 1) <> -1 /*{AND SReaction >= Reaction}*/ Then
Sell("s",AtStop,SEntry);
#{Exits}
IF LReaction == 0 Then
ExitLong("ex",AtStop,LExit);
IF SReaction == 0 Then
ExitShort("sx",AtStop,SExit);
> 산티아고 님이 쓴 글입니다.
> 제목 : 수식수정 부탁 드립니다.
>
안녕하세요?
TS 수식인데 YT로 바꾸고 싶습니다.
{Thrust Count Completion}
LTR = LThrust = TCount AND NewLThrust;
STR = SThrust = TCount AND NewSThrust;
이 부분이 특히 어려운데 가능하시면 설명까지 부탁드리고 싶습니다.
좋은 주말 보내세요!
Inputs: ChanLen(40), Reaction(4), TCount(2), Setup(4);
Vars: HiChan(0), LoChan(0), LReaction(0), LReacHigh(0), LReacLow(0), SReaction(0), SReacHigh(0), SReacLow(0), LThrust(0), SThrust(0), LEntry(0), LExit(0), SEntry(0), SExit(0), NewLThrust(False), NewSThrust(False), LTR(False), STR(False);
{Assignment of values for the High/Low Channel}
HiChan = Highest(High, ChanLen)[1];
LoChan = Lowest(Low, ChanLen)[1];
{Reversal Breakout - Initial Setup}
IF MarketPosition <> 1 Then Begin
IF High > HiChan Then Begin
LReaction = 1;
LReacHigh = High;
LReacLow = Low;
LExit = LReacLow;
LThrust = 0;
SReaction = 0;
End;
End
Else Begin
LReaction = 0;
LThrust = 0;
End;
{Reversal Breakout - Initial Setup}
IF MarketPosition <> -1 Then Begin
IF Low < LoChan Then Begin
SReaction = 1;
SReacHigh = High;
SReacLow = Low;
SExit = SReacLow;
SThrust = 0;
LReaction = 0;
End;
End
Else Begin
SReaction = 0;
LThrust = 0;
End;
{Upward Trend Resumption}
IF LReaction >= 1 Then Begin
IF Low < LExit Then Begin
LExit = Low;
LThrust = 0;
End;
IF High < LReacHigh AND Low < LReacLow Then Begin
LReaction = LReaction + 1;
LReacHigh = High;
LReacLow = Low;
NewLThrust = True;
End;
End;
{Downward Trend Resumption}
IF SReaction >= 1 Then Begin
IF High > SExit Then Begin
SExit = High;
SThrust = 0;
End;
IF Low > SReacLow AND High > SReacHigh Then Begin
SReaction = SReaction + 1;
SReacLow = Low;
SReacHigh = High;
NewSThrust = True;
End;
End;
{Bullish Thrust Day accumulation}
IF LReaction >= Reaction AND Close > High[1] Then
LThrust = LThrust + 1;
{Bearish Thrust Day accumulation}
IF SReaction >= Reaction AND Close < Low[1] Then
SThrust = SThrust + 1;
{Thrust Count Completion}
LTR = LThrust = TCount AND NewLThrust;
STR = SThrust = TCount AND NewSThrust;
{Entry Price Setup}
IF LTR Then Begin
LEntry = High + 1 Point;
NewLThrust = False;
End;
IF STR Then Begin
SEntry = Low - 1 Point;
NewSThrust = False;
End;
{Entries}
IF MRO(LTR, Setup, 1) <> -1 Then
Buy Next Bar at LEntry Stop;
IF MRO(STR, Setup, 1) <> -1 {AND SReaction >= Reaction} Then
Sell Next Bar at SEntry Stop;
{Exits}
IF LReaction = 0 Then
ExitLong Next Bar at LExit Stop;
IF SReaction = 0 Then
ExitShort Next Bar at SExit Stop;
이전글