커뮤니티

손절매 시점에서 손절후 매수진입은 되는데 손절후 매도진입이 안됩니다.

프로필 이미지
어쿠스틱p
2015-05-07 10:38:58
187
글번호 85791
답변완료

첨부 이미지

수식검증에는 이상은 없는데 점검좀 부탁드립니다. 1. 손절매 시점에서 손절후 매수진입은 되는데 손절후 매도진입이 안됩니다. 2.손절후 매도진입이나 매수진입을 하였더라도 다시 손절상황이 오면 그 반대방향으로 다시 손절후 매매되게 해주세요 3. 그리고 손절시점 Buy("손절후매수진입",AtStop,EntryPrice*0.95); 이중 퍼센트지로 손절 시점 변경하려면 무엇을 바꿔야할까요? var : val1(0), val2(False), val3(False), val4(False), val5(False); var : SLindex1(0), SLindex2(0), Lindex1(0), Lindex2(0); var : SHindex1(0), SHindex2(0), Hindex1(0), Hindex2(0); val1 = stochasticsD(12,3,3); val2 = val1 > val1[1] and val1[1] <= val1[2]; // 스토캐스틱 상승반전 val3 = L > L[1] and L[1] <= L[2]; // 저가 상승반전 val4 = val1 < val1[1] and val1[1] >= val1[2]; // 스토캐스틱 하락반전 val5 = H < H[1] and H[1] >= H[2]; // 고가 하락반전 SLindex1 = MRO(val2,50,1); // 최근 스토캐스틱 상승반전 시점의 현재로 부터의 index SLindex2 = MRO(val2,50,2); // 두번째로 최근 스토캐스틱 상승반전 시점의 현재로 부터의 index Lindex1 = MRO(val3,50,1); // 최근 저가 상승반전 시점의 현재로 부터의 index Lindex2 = MRO(val3,50,2); // 두번째로 최근 저가 상승반전 시점의 현재로 부터의 index SHindex1 = MRO(val4,50,1); // 최근 스토캐스틱 하락반전 시점의 현재로 부터의 index SHindex2 = MRO(val4,50,2); // 두번째로 최근 스토캐스틱 하락반전 시점의 현재로 부터의 index Hindex1 = MRO(val5,50,1); // 최근 고가 하락반전 시점의 현재로 부터의 index Hindex2 = MRO(val5,50,2); // 두번째로 최근 고가 하락반전 시점의 현재로 부터의 index # stochasticsD의 상승형 divergence 발생시 매수 if val1[1] <= 20 and //전봉의 stochasticsD값이 침체권이 20 이하에 위치해 있고 val1[SLindex1+1] > val1[SLindex2+1] and // 최근 스토 상승반전 시점의 값이 이전 반전 시점의 값보다 크고 L[Lindex1+1] < L[Lindex2+1] and // 최근 저가 상승반전 시점의 값은 이전 저가 반전 값보다 작고 val2 and lowest(L,5) == lowest(L,15) // 스토캐스틱 상승반전 되었고 5봉동안의 최저가가 15봉 동안의 최저가 이면 then { buy("매수"); } # stochasticsD의 하락형 divergence 발생시 매도 if val1[1] >= 80 and //전봉의 stochasticsD값이 과열권인 80 이상에 위치해 있고 val1[SHindex1+1] < val1[SHindex2+1] and // 최근 스토 하락반전 시점의 값이 이전 반전 시점의 값보다 작고 H[Lindex1+1] > H[Lindex2+1] and // 최근 고가가 하락반전 시점의 값은 이전 고가 반전 값보다 크고 val4 and highest(H,5) == highest(H,15) // 스토캐스틱 하락반전 되었고 5봉동안의 최고가가 15봉 동안의 최고가 이면 then { sell("매도");Buy("손절후매수진입",AtStop,EntryPrice*0.95); } if MarketPosition == 1 Then Sell("손절후매도진입",AtStop,EntryPrice*0.95); if MarketPosition == -1 Then Buy("손절후매수진입",AtStop,EntryPrice*0.95);
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2015-05-07 14:59:45

안녕하세요 예스스탁입니다. 식을 수정했습니다. 손절 %도 변경하실수 있게 외부변수(lossPercent)로 처리했습니다. input : lossPercent(5); var : val1(0), val2(False), val3(False), val4(False), val5(False); var : SLindex1(0), SLindex2(0), Lindex1(0), Lindex2(0); var : SHindex1(0), SHindex2(0), Hindex1(0), Hindex2(0); val1 = stochasticsD(12,3,3); val2 = val1 > val1[1] and val1[1] <= val1[2]; // 스토캐스틱 상승반전 val3 = L > L[1] and L[1] <= L[2]; // 저가 상승반전 val4 = val1 < val1[1] and val1[1] >= val1[2]; // 스토캐스틱 하락반전 val5 = H < H[1] and H[1] >= H[2]; // 고가 하락반전 SLindex1 = MRO(val2,50,1); // 최근 스토캐스틱 상승반전 시점의 현재로 부터의 index SLindex2 = MRO(val2,50,2); // 두번째로 최근 스토캐스틱 상승반전 시점의 현재로 부터의 index Lindex1 = MRO(val3,50,1); // 최근 저가 상승반전 시점의 현재로 부터의 index Lindex2 = MRO(val3,50,2); // 두번째로 최근 저가 상승반전 시점의 현재로 부터의 index SHindex1 = MRO(val4,50,1); // 최근 스토캐스틱 하락반전 시점의 현재로 부터의 index SHindex2 = MRO(val4,50,2); // 두번째로 최근 스토캐스틱 하락반전 시점의 현재로 부터의 index Hindex1 = MRO(val5,50,1); // 최근 고가 하락반전 시점의 현재로 부터의 index Hindex2 = MRO(val5,50,2); // 두번째로 최근 고가 하락반전 시점의 현재로 부터의 index # stochasticsD의 상승형 divergence 발생시 매수 if val1[1] <= 20 and //전봉의 stochasticsD값이 침체권이 20 이하에 위치해 있고 val1[SLindex1+1] > val1[SLindex2+1] and // 최근 스토 상승반전 시점의 값이 이전 반전 시점의 값보다 크고 L[Lindex1+1] < L[Lindex2+1] and // 최근 저가 상승반전 시점의 값은 이전 저가 반전 값보다 작고 val2 and lowest(L,5) == lowest(L,15) // 스토캐스틱 상승반전 되었고 5봉동안의 최저가가 15봉 동안의 최저가 이면 then { buy("매수"); } # stochasticsD의 하락형 divergence 발생시 매도 if val1[1] >= 80 and //전봉의 stochasticsD값이 과열권인 80 이상에 위치해 있고 val1[SHindex1+1] < val1[SHindex2+1] and // 최근 스토 하락반전 시점의 값이 이전 반전 시점의 값보다 작고 H[Lindex1+1] > H[Lindex2+1] and // 최근 고가가 하락반전 시점의 값은 이전 고가 반전 값보다 크고 val4 and highest(H,5) == highest(H,15) // 스토캐스틱 하락반전 되었고 5봉동안의 최고가가 15봉 동안의 최고가 이면 then { sell("매도"); } if MarketPosition == 1 Then Sell("손절후매도진입",AtStop,EntryPrice*(1-lossPercent/100)); if MarketPosition == -1 Then Buy("손절후매수진입",AtStop,EntryPrice*(1+lossPercent/100)); 즐거운 하루되세요 > 어쿠스틱p 님이 쓴 글입니다. > 제목 : 손절매 시점에서 손절후 매수진입은 되는데 손절후 매도진입이 안됩니다. > 수식검증에는 이상은 없는데 점검좀 부탁드립니다. 1. 손절매 시점에서 손절후 매수진입은 되는데 손절후 매도진입이 안됩니다. 2.손절후 매도진입이나 매수진입을 하였더라도 다시 손절상황이 오면 그 반대방향으로 다시 손절후 매매되게 해주세요 3. 그리고 손절시점 Buy("손절후매수진입",AtStop,EntryPrice*0.95); 이중 퍼센트지로 손절 시점 변경하려면 무엇을 바꿔야할까요? var : val1(0), val2(False), val3(False), val4(False), val5(False); var : SLindex1(0), SLindex2(0), Lindex1(0), Lindex2(0); var : SHindex1(0), SHindex2(0), Hindex1(0), Hindex2(0); val1 = stochasticsD(12,3,3); val2 = val1 > val1[1] and val1[1] <= val1[2]; // 스토캐스틱 상승반전 val3 = L > L[1] and L[1] <= L[2]; // 저가 상승반전 val4 = val1 < val1[1] and val1[1] >= val1[2]; // 스토캐스틱 하락반전 val5 = H < H[1] and H[1] >= H[2]; // 고가 하락반전 SLindex1 = MRO(val2,50,1); // 최근 스토캐스틱 상승반전 시점의 현재로 부터의 index SLindex2 = MRO(val2,50,2); // 두번째로 최근 스토캐스틱 상승반전 시점의 현재로 부터의 index Lindex1 = MRO(val3,50,1); // 최근 저가 상승반전 시점의 현재로 부터의 index Lindex2 = MRO(val3,50,2); // 두번째로 최근 저가 상승반전 시점의 현재로 부터의 index SHindex1 = MRO(val4,50,1); // 최근 스토캐스틱 하락반전 시점의 현재로 부터의 index SHindex2 = MRO(val4,50,2); // 두번째로 최근 스토캐스틱 하락반전 시점의 현재로 부터의 index Hindex1 = MRO(val5,50,1); // 최근 고가 하락반전 시점의 현재로 부터의 index Hindex2 = MRO(val5,50,2); // 두번째로 최근 고가 하락반전 시점의 현재로 부터의 index # stochasticsD의 상승형 divergence 발생시 매수 if val1[1] <= 20 and //전봉의 stochasticsD값이 침체권이 20 이하에 위치해 있고 val1[SLindex1+1] > val1[SLindex2+1] and // 최근 스토 상승반전 시점의 값이 이전 반전 시점의 값보다 크고 L[Lindex1+1] < L[Lindex2+1] and // 최근 저가 상승반전 시점의 값은 이전 저가 반전 값보다 작고 val2 and lowest(L,5) == lowest(L,15) // 스토캐스틱 상승반전 되었고 5봉동안의 최저가가 15봉 동안의 최저가 이면 then { buy("매수"); } # stochasticsD의 하락형 divergence 발생시 매도 if val1[1] >= 80 and //전봉의 stochasticsD값이 과열권인 80 이상에 위치해 있고 val1[SHindex1+1] < val1[SHindex2+1] and // 최근 스토 하락반전 시점의 값이 이전 반전 시점의 값보다 작고 H[Lindex1+1] > H[Lindex2+1] and // 최근 고가가 하락반전 시점의 값은 이전 고가 반전 값보다 크고 val4 and highest(H,5) == highest(H,15) // 스토캐스틱 하락반전 되었고 5봉동안의 최고가가 15봉 동안의 최고가 이면 then { sell("매도");Buy("손절후매수진입",AtStop,EntryPrice*0.95); } if MarketPosition == 1 Then Sell("손절후매도진입",AtStop,EntryPrice*0.95); if MarketPosition == -1 Then Buy("손절후매수진입",AtStop,EntryPrice*0.95);