커뮤니티

스토캐스틱

프로필 이미지
회원
2014-05-19 15:57:54
167
글번호 75196
답변완료
항상 빠른답변감사합니다. Inputs: Length1(5),Length2(3),OverSold(27.5),OverBought(72.5), Ch_L(13); Variables: sto_Line(0), LCount(0), SCount(0); Sto_Line = StochasticsK(Length1,Length2); If CrossUp(Sto_Line, OverBought) and index > 1 and stime >= 092000 then { SCount = index; } If MarketPosition == 0 AND C < O and index < LCount + Ch_L and stime >= 093000 then { Value1 = Open; Sell ("Sell"); } IF MarketPosition == 1 then { LCount = -999; ExitShort("T_L2", Atlimit, EntryPrice-(ATR(14)*3)); ExitShort("T_L1", Atstop, EntryPrice+(ATR(14)*2)); } 첫번째, 스토캐스틱k가 72.5를 크로스업하고 음봉이 나오면 매도 하려고 하는데, 제대로 되지 않네요. 수정 좀 부탁드립니다. 그리고 두번째, 아래의 매수를 위한 수식은 제대로 되는거 같은데, 어떻게 된건지...ㅜㅜ 두개의 식이 다르게 작동하는 이유가 뭔가요? 답변부탁드립니다. Inputs: Length1(5),Length2(3),OverSold(27.5),OverBought(72.5), Ch_L(13); Variables: sto_Line(0), LCount(0), SCount(0); Sto_Line = StochasticsK(Length1,Length2); If CrossDown(Sto_Line, OverSold) and index > 1 and stime >= 092000 then { LCount = index; } If MarketPosition == 0 AND C > O and index < LCount + Ch_L and stime >= 093000 then { Value1 = Open; Buy ("Buy"); } IF MarketPosition == 1 then { LCount = -999; ExitLong("T_L2", Atlimit, EntryPrice+(ATR(14)*3)); ExitLong("T_L1", AtStop, EntryPrice-(ATR(14)*2)); } 세번째, 위의 식과 상관없이 리버스 시스템식 좀 부탁드립니다. 9시 15분 이후, 스토캐스틱k가 27.5를 크로스다운한후 양봉이 나오면 매수, 스토캐스틱K가 72.5를 크로스업한후 음봉이 나오면 매도.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2014-05-20 11:00:30

안녕하세요 예스스탁입니다. If CrossUp(Sto_Line, OverBought) and index > 1 and stime >= 092000 then { SCount = index; } If MarketPosition == 0 AND C < O and index < LCount + Ch_L and stime >= 093000 then { Value1 = Open; Sell ("Sell"); } 이 내용 보시면 index는 Scount에 저장하고 매도식의 조건에서는 Lcount를 이용하고 있습니다. Scount로 변경하셔야 합니다. 만약 스토케스틱 과매수나 과매도에 들어간 후에 해당 구간안에만 있을때 신호가 발생하게 하시려면 아래와 같이 해당 구간에서 벗어나면 알수 있게 변수에 값을 초기화해 구분해 사용하셔야 합니다. 아래내용 참고하시기 바랍니다. Input : Length1(5),Length2(3),OverSold(27.5),OverBought(72.5), Ch_L(13); Variable : sto_Line(0), LCount(0), SCount(0); #일자가 바뀌면 -1로 초기화 if date != date[1] then{ LCount = -1; SCount = -1; } Sto_Line = StochasticsK(Length1,Length2); #과매도구간 들어가면 인덱스 저장 If CrossDown(Sto_Line, OverSold) and index > 1 and stime >= 092000 then LCount = index; #과매도구간 벗어나면 -1 저장 if Sto_Line > OverSold Then LCount = -1; #과매수구간에 들어가면 인덱스 저장 If CrossUp(Sto_Line, OverBought) and index > 1 and stime >= 092000 then SCount = index; #과매수구간을 벗어나면 -1 저장 if Sto_Line < OverBought Then SCount = -1; If MarketPosition == 0 AND C > O and Index >= LCount and index < LCount + Ch_L and stime >= 093000 then { Value1 = Open; Buy ("Buy"); } IF MarketPosition == 1 then { LCount = -999; ExitLong("B_L2", Atlimit, EntryPrice+(ATR(14)*3)); ExitLong("B_L1", AtStop, EntryPrice-(ATR(14)*2)); } If MarketPosition == 0 AND C < O and SCount > 0 and index >= SCount and index < SCount + Ch_L and stime >= 093000 then { Value1 = Open; Sell ("Sell"); } IF MarketPosition == -1 then { LCount = -999; ExitShort("S_L2", Atlimit, EntryPrice-(ATR(14)*3)); ExitShort("S_L1", Atstop, EntryPrice+(ATR(14)*2)); } 즐거운 하루되세요 > HI_mu**** 님이 쓴 글입니다. > 제목 : 스토캐스틱 > 항상 빠른답변감사합니다. Inputs: Length1(5),Length2(3),OverSold(27.5),OverBought(72.5), Ch_L(13); Variables: sto_Line(0), LCount(0), SCount(0); Sto_Line = StochasticsK(Length1,Length2); If CrossUp(Sto_Line, OverBought) and index > 1 and stime >= 092000 then { SCount = index; } If MarketPosition == 0 AND C < O and index < LCount + Ch_L and stime >= 093000 then { Value1 = Open; Sell ("Sell"); } IF MarketPosition == 1 then { LCount = -999; ExitShort("T_L2", Atlimit, EntryPrice-(ATR(14)*3)); ExitShort("T_L1", Atstop, EntryPrice+(ATR(14)*2)); } 첫번째, 스토캐스틱k가 72.5를 크로스업하고 음봉이 나오면 매도 하려고 하는데, 제대로 되지 않네요. 수정 좀 부탁드립니다. 그리고 두번째, 아래의 매수를 위한 수식은 제대로 되는거 같은데, 어떻게 된건지...ㅜㅜ 두개의 식이 다르게 작동하는 이유가 뭔가요? 답변부탁드립니다. Inputs: Length1(5),Length2(3),OverSold(27.5),OverBought(72.5), Ch_L(13); Variables: sto_Line(0), LCount(0), SCount(0); Sto_Line = StochasticsK(Length1,Length2); If CrossDown(Sto_Line, OverSold) and index > 1 and stime >= 092000 then { LCount = index; } If MarketPosition == 0 AND C > O and index < LCount + Ch_L and stime >= 093000 then { Value1 = Open; Buy ("Buy"); } IF MarketPosition == 1 then { LCount = -999; ExitLong("T_L2", Atlimit, EntryPrice+(ATR(14)*3)); ExitLong("T_L1", AtStop, EntryPrice-(ATR(14)*2)); } 세번째, 위의 식과 상관없이 리버스 시스템식 좀 부탁드립니다. 9시 15분 이후, 스토캐스틱k가 27.5를 크로스다운한후 양봉이 나오면 매수, 스토캐스틱K가 72.5를 크로스업한후 음봉이 나오면 매도.