답변완료
부탁 드립니다.
안녕하세요.
늘 친절하신 답변에 감사드립니다.
라운드 넘버(Round Numbers, 줄여서 RN이라고 하겠습니다)를 이용해서 매매하는, 아주 간단한 로직으로 된 시스템 식 부탁드리고자 합니다.
가령 S&P500 지수 선물의 경우 ((물론 아무 종목이든 상관 없습니다. 로직은 동일하니까요)),
"10포인트(=40틱)((외부 변수명: 줄폭수. 즉, "Input: 줄폭수(40);" )) 간격으로 RN들에 줄들을 여러 개 친다고 가정하고,
이 줄들을, 100기간값((외부변수로 부탁드립니다. 즉 "Input: Period(100);" )) 이동평균선이 위로 돌파하면 매수, 아래로 이탈하면 매도 하는 식"
이 게 로직의 거의 다입니다.
다만 횡보 때에 하나의 라운드 넘버 줄에서 계속 오르락 내리락 하며 매수 매도를 계속해서 손실만 누적되는 상황을 회피하기 위한 필터링도 추가로 부탁드립니다.
((아래 부분은 상황을 부연설명해 드리기 위해 말만 길지, 내용=로직은 간단합니다. 양해 부탁드립니다))
즉,
가령
현재 이미니S&P500지수선물 가격이 4258.75라고 가정할 때,
10포인트 간격 RN줄들은, 바로 위가 4260, 바로 아래가 4250이 될 것입니다.
이 때 이동평균선이 위에 있는 줄 4260((편의상 이를 "진입RN줄"이라고 부르겠습니다))을 상향돌파하면 매수를 하는데, 만일 이 때 가격이 더 올라가지 못하고 다시 내려 가서, 이동평균선이 이 진입RN줄((4260))을 다시 아래로 이탈하면 이 순간 Long Position을 청산하여, 이 것이 자연히 손절 방식이 되게 되는데,
만일 가격이 횡보상태라 이 진입RN줄을 중심으로 오르락내리락만 하면 잔 손실만 자꾸 누적되게 되므로,
하나의 진입RN줄에서는, 한 번 손절이 발생하게 되면 (즉 가령, 이평선이 4260을 돌파하여 최초 매수 진입한 후, 이평선이 이 진입RN줄을 도로 하향이탈하여 매도로 청산...),
가격이 이 진입RN줄의 "위의 줄((예: 4270))"을 상향 돌파할 때에나 매수를 하든가, 또는 이 진입RN줄의 "밑의 줄((예: 4250))"을 하향이탈할 때에만 매도로 진입하고,
그 게 아니라 맨 처음에 4260을 상향돌파하여 매수했는데, 윗줄까지 못가고 내려 와서 4260을 하향이탈하여 청산했다면, 이제 다시 더 밑으로 가지도 않고 다시 또 4260을 상향돌파할 때에는 그냥 무시하고 진입하지 않도록 하여 주시면 감사하겠습니다.
즉 하나의 진입RN줄에서 매수로 진입했다면, 그 RN줄에서는 한 번의 손절청산만 허용하고, 손절청산 이후에는 다시 그 줄을 상향돌파하더라도 진입하지 않고 무시하고, 위의 줄을 돌파할 때에나 매수진입하거나, 밑의 줄을 이탈할 때에나 매도 진입하도록 부탁드립니다.
(그래서, 4260줄에서만 매수 매도 매수 매도 매수 매도 이런 식으로 반복되어 손절만 따이는 일이 생기지 않도록...)
이까지가 제가 부탁드리고 싶은 로직입니다.
이렇게 되면,
만일 상승 추세가 강하여 위의 4260을 돌파할 때 매수로 진입되었다면, 가격이 계속 상승하여 4270을 돌파하면, 이 때 시스템트레이딩 설정창에서 피라미딩 설정에서 "허용안함"이 선택되었다면, 그냥 아무 변동없이 그대로 롱포지션이 유지될 것이고, 만일 피라미딩이 허용되도록 설정했다면, 추가로 한 계약 더 매수 진입되는 식으로 전개 될 것으로 기대합니다. 단순한 상황을 가정하여, 피라미딩 허용 안 하는 것으로 설정했다면, 가격이 쭉쭉 상승하여 4280 4290 등을 계속 돌파하면, 롱포지션이 계속 유지되다가, 가령 4290 돌파 후에 4300을 돌파하지 못하고 추세가 역전되어 하락하기 시작한다면, 이평선이 4290을 도로 하향이탈할 것이고 이 때에 롱포지션이 청산되어 이익이 확보되어(Profit Taking), 일종의 추적청산 기능도 자연스레 내포될 것으로 기대를 합니다.
최초의 진입 ((4260 상향 돌파시)) 후, 다음 RN줄((4270))을 돌파하지 못하고 하락해 버린다면, 도로 4260을 이평선이 이탈할 때 롱포지션이 청산될 것이므로, "초기 Stop"도 자연스레 이루어 질 것으로 기대합니다.
이 아랫부분의 부연설명은 제 구상을 알려드려서, 코딩해 주시는 부분과, 저의 이런 예상이 상충되지 않을 것을 확인해 주십사 하는 의도가 있어서 말씀 드렸습니다.
요약하자면,
RN줄들을 이평선이 돌파시 매수, 이탈시 매도.
단 진입RN줄에서는, 이평선이 그 진입RN줄 위의 RN줄을 돌파하거나 밑의 RN줄을 이탈하지 않는 한, 한 번의 진입과 한 번의 손절 청산만 허용.
위에서는 매수를 중심으로 말씀드렸지만, 당연히 대칭되게 매도도 같이 부탁드리고 싶습니다.
대단히 감사합니다.
2021-06-25
1449
글번호 150273
시스템
답변완료
키움 조건식 변경 부탁 드립니다.
안녕하세요 키움 시스템 트레이딩 조건식 입니다
시스템 트레이딩 조건식으로 변경 부탁 드립니다.
사용자 전략>
매수진입>
A=valuewhen(1,(highest(h(1),period) < highest(h,period)),((highest(high,Period)+lowest(low,Period))/2));
highest(H, period) - (((highest(H, period)-A)/5)*5);
B=(C-A)/A*100;
B >= -0.5 and B <= 0.5
지표변수>
period 130
종가와 지표선의 값이 일치하는 경우는 드문관계로
+- 0.5% 범위내에 종가가 위치하는 경우 매수 포지션이 적용되도록
작성한 수식입니다. 이 값은 적절하게 변경하시면 됩니다.
추가
추매시 조건 입니다 요것도 변경 부탁드립니디.
1차매수
A=valuewhen(1,(highest(h(1),period) < highest(h,period)),((highest(high,Period)+lowest(low,Period))/2));
highest(H, period) - (((highest(H, period)-A)/5)*5);
B=(C-A)/A*100;
B >= -0.5 and B <= 0.5
2차매수
A=valuewhen(1,(highest(h(1),period) < highest(h,period)),((highest(high,Period)+lowest(low,Period))/2));
highest(H, period) - (((highest(H, period)-A)/5)*6); <------요부분 변경
B=(C-A)/A*100;
B >= -0.5 and B <= 0.5
3차매수
A=valuewhen(1,(highest(h(1),period) < highest(h,period)),((highest(high,Period)+lowest(low,Period))/2));
highest(H, period) - (((highest(H, period)-A)/5)*7);
B=(C-A)/A*100;
B >= -0.5 and B <= 0.5
2021-06-25
2069
글번호 150271
시스템