커뮤니티

수식수정 부탁 드립니다.

프로필 이미지
산티아고
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;