커뮤니티

질문 올립니다.

프로필 이미지
즐겁게
2014-04-24 05:59:52
166
글번호 74639
답변완료
항상 친절하시고 상세하신 답변에 깊이 감사드립니다. 36003번 글과 관련하여 질문 올리고 싶습니다. 1. 알려 주신 답글대로 해 보면, 단기 추세선은 잘 그려지고 그에 따른 거래도 잘 이루어 지는 걸로 보이는데, 장기 추세선은 발생하지 않고, 따라서 장기 추세선 관통에 따른 거래는 발생하지 않는 것으로 보입니다. 확인차, 연장선들을 하나도 지우지 않고, 장기선과 단기선을 색깔을 달리하여 확인하여 보았는데, 장기 추세선은 하나도 생기지 않는 것으로 보입니다. 죄송하지만, 장기 추세선 소스 부분을 다시 한 번 확인하여 주시면 대단히 감사하겠습니다. 2. 위 질문과 관련하여, 추가로, 36003에서 알려 주신 소스에서, 매매와 관련된 부분(MarketPosition, MaxEntries 등등)을 제외하고 단기 추세선(연장선 포함), 장기 추세선(연장선 포함)만 남는 지표식으로도 올려 주시면 대단히 감사하겠습니다. 감사합니다! * 36003 소스: input : Left(5),Right(2),P(5); var : emav(0),count(0); var : SL1(0),SD1(0),ST1(0),SL2(0),SD2(0),ST2(0); var : nValue(0),nsdate(0),nstime(0),Strend(0),LTrend(0); emav = ema(c,P); if SwingLow(1,L,Left,Right,Left+Right+1) != -1 Then{ count = count+1; SL1 = L[right]; SD1 = sdate[right]; ST1 = Stime[right]; SL2 = SL1[1]; SD2 = SD1[1]; ST2 = ST1[1]; if count >= 2 and SL1 > SL2 Then{ if CurrentEntries < 2 Then{ buy("b",OnClose,def,1); } } } if MarketPosition == 1 Then{ #단기추세선 if MaxEntries >= 1 and SL1 > SL2 Then{ TL_Delete(Strend); Strend = TL_New(SD2,ST2,SL2,SD1,St1,SL1); TL_SetExtRight(Strend,true); } #장기추세선 if MaxEntries >= 2 and SL1 > SL2 Then{ TL_Delete(Ltrend); Ltrend = TL_New(SD2[BarsSinceEntry],ST2[BarsSinceEntry],SL2[BarsSinceEntry],SD1,St1,SL1); TL_SetExtRight(Ltrend,true); } if MarketPosition == 1 and Condition1 == false And emav < TL_GetValue(Strend,sdate,stime) and emav[1] > TL_GetValue(Strend,sdate[1],stime[1]) Then{ ExitLong("bx1",OnClose,def,"",1,1); } if MarketPosition == 1 and MaxEntries >= 2 and Condition2 == false And emav < TL_GetValue(Ltrend,sdate,stime) and emav[1] > TL_GetValue(Ltrend,sdate[1],stime[1]) Then{ ExitLong("bx2",OnClose,def,"",1,1); } }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2014-04-24 16:47:14

안녕하세요 예스스탁입니다. 1. 해당식 장기추세선이 안나오는것이 아닙니다. 기존식에 장기와 단기 각각 색을 달리 지정했습니다. input : Left(5),Right(2),P(5); var : emav(0),count(0); var : SL1(0),SD1(0),ST1(0),SL2(0),SD2(0),ST2(0); var : nValue(0),nsdate(0),nstime(0),Strend(0),LTrend(0); emav = ema(c,P); if SwingLow(1,L,Left,Right,Left+Right+1) != -1 Then{ count = count+1; SL1 = L[right]; SD1 = sdate[right]; ST1 = Stime[right]; SL2 = SL1[1]; SD2 = SD1[1]; ST2 = ST1[1]; if count >= 2 and SL1 > SL2 Then{ if CurrentEntries < 2 Then{ buy("b",OnClose,def,1); } } } if MarketPosition == 1 Then{ #단기추세선 if MaxEntries >= 1 and SL1 > SL2 Then{ TL_Delete(Strend); Strend = TL_New(SD2,ST2,SL2,SD1,St1,SL1); TL_SetExtRight(Strend,true); TL_SetColor(Strend,RED); } #장기추세선 if MaxEntries >= 2 and SL1 > SL2 Then{ TL_Delete(Ltrend); Ltrend = TL_New(SD2[BarsSinceEntry],ST2[BarsSinceEntry],SL2[BarsSinceEntry],SD1,St1,SL1); TL_SetExtRight(Ltrend,true); TL_SetColor(Ltrend,blue); } if MarketPosition == 1 and Condition1 == false And emav < TL_GetValue(Strend,sdate,stime) and emav[1] > TL_GetValue(Strend,sdate[1],stime[1]) Then{ ExitLong("bx1",OnClose,def,"",1,1); } if MarketPosition == 1 and MaxEntries >= 2 and Condition2 == false And emav < TL_GetValue(Ltrend,sdate,stime) and emav[1] > TL_GetValue(Ltrend,sdate[1],stime[1]) Then{ ExitLong("bx2",OnClose,def,"",1,1); } } 위식 적용하시면 첨부된 그림과 같이 각기 다른색으로 출력되는 것을 확인하실 수 있습니다. 다만 이전추세선을 지우는 부분을 없애고 모두 표시를 해도 보이지 않을 수 있는데 추세선은 같은 값으로 복수가 그려지게 되면 보이지 않게 됩니다. 청산식중 장기를 이용하는 bx2라는 이름이 해당 값을 이용한 청산이 됩니다. 2, input : Left(5),Right(2),P(5); var : emav(0),count(0); var : SL1(0),SD1(0),ST1(0),SL2(0),SD2(0),ST2(0),Bcnt(0); var : nValue(0),nsdate(0),nstime(0),Strend(0),LTrend(0); emav = ema(c,P); if SwingLow(1,L,Left,Right,Left+Right+1) != -1 Then{ count = count+1; SL1 = L[right]; SD1 = sdate[right]; ST1 = Stime[right]; SL2 = SL1[1]; SD2 = SD1[1]; ST2 = ST1[1]; if count >= 2 and SL1 > SL2 Then{ Bcnt = Bcnt+1; if Bcnt == 1 and Bcnt[1] != Bcnt Then{ value1 = sd2; value2 = st2; value3 = sL2; } } if SL1 <= SL2 Then{ Bcnt = 0; } } if Bcnt >= 1 Then{ #단기추세선 if Bcnt >= 1 and SL1 > SL2 Then{ TL_Delete(Strend); Strend = TL_New(SD2,ST2,SL2,SD1,St1,SL1); TL_SetExtRight(Strend,true); TL_SetColor(Strend,RED); } #장기추세선 if Bcnt >= 2 and SL1 > SL2 Then{ TL_Delete(Ltrend); Ltrend = TL_New(value1,value2,value3,SD1,St1,SL1); TL_SetExtRight(Ltrend,true); TL_SetColor(Ltrend,blue); } if Bcnt == 1 And emav < TL_GetValue(Strend,sdate,stime) and emav[1] > TL_GetValue(Strend,sdate[1],stime[1]) Then{ Bcnt = 0; } if Bcnt >= 2 And emav < TL_GetValue(Ltrend,sdate,stime) and emav[1] > TL_GetValue(Ltrend,sdate[1],stime[1]) Then{ Bcnt = 0; } } 즐거운 하루되세요 > 즐겁게 님이 쓴 글입니다. > 제목 : 질문 올립니다. > 항상 친절하시고 상세하신 답변에 깊이 감사드립니다. 36003번 글과 관련하여 질문 올리고 싶습니다. 1. 알려 주신 답글대로 해 보면, 단기 추세선은 잘 그려지고 그에 따른 거래도 잘 이루어 지는 걸로 보이는데, 장기 추세선은 발생하지 않고, 따라서 장기 추세선 관통에 따른 거래는 발생하지 않는 것으로 보입니다. 확인차, 연장선들을 하나도 지우지 않고, 장기선과 단기선을 색깔을 달리하여 확인하여 보았는데, 장기 추세선은 하나도 생기지 않는 것으로 보입니다. 죄송하지만, 장기 추세선 소스 부분을 다시 한 번 확인하여 주시면 대단히 감사하겠습니다. 2. 위 질문과 관련하여, 추가로, 36003에서 알려 주신 소스에서, 매매와 관련된 부분(MarketPosition, MaxEntries 등등)을 제외하고 단기 추세선(연장선 포함), 장기 추세선(연장선 포함)만 남는 지표식으로도 올려 주시면 대단히 감사하겠습니다. 감사합니다! * 36003 소스: input : Left(5),Right(2),P(5); var : emav(0),count(0); var : SL1(0),SD1(0),ST1(0),SL2(0),SD2(0),ST2(0); var : nValue(0),nsdate(0),nstime(0),Strend(0),LTrend(0); emav = ema(c,P); if SwingLow(1,L,Left,Right,Left+Right+1) != -1 Then{ count = count+1; SL1 = L[right]; SD1 = sdate[right]; ST1 = Stime[right]; SL2 = SL1[1]; SD2 = SD1[1]; ST2 = ST1[1]; if count >= 2 and SL1 > SL2 Then{ if CurrentEntries < 2 Then{ buy("b",OnClose,def,1); } } } if MarketPosition == 1 Then{ #단기추세선 if MaxEntries >= 1 and SL1 > SL2 Then{ TL_Delete(Strend); Strend = TL_New(SD2,ST2,SL2,SD1,St1,SL1); TL_SetExtRight(Strend,true); } #장기추세선 if MaxEntries >= 2 and SL1 > SL2 Then{ TL_Delete(Ltrend); Ltrend = TL_New(SD2[BarsSinceEntry],ST2[BarsSinceEntry],SL2[BarsSinceEntry],SD1,St1,SL1); TL_SetExtRight(Ltrend,true); } if MarketPosition == 1 and Condition1 == false And emav < TL_GetValue(Strend,sdate,stime) and emav[1] > TL_GetValue(Strend,sdate[1],stime[1]) Then{ ExitLong("bx1",OnClose,def,"",1,1); } if MarketPosition == 1 and MaxEntries >= 2 and Condition2 == false And emav < TL_GetValue(Ltrend,sdate,stime) and emav[1] > TL_GetValue(Ltrend,sdate[1],stime[1]) Then{ ExitLong("bx2",OnClose,def,"",1,1); } }