커뮤니티

리스크 관리 관련 질문입니다.

프로필 이미지
마녀58
2022-09-10 11:31:08
1052
글번호 162096
답변완료
input : len(3),capital(100000000); var : account(0),profitloss(0),Truestrength(0),Truestrengthsig(0),ATRVal(0),number(0); ATRVal = H-L; Truestrength = TSI(C, 4, 8, 6); account=Capital+NetProfit(); number=Floor((account/ATRVal)*0.02); if crossup(Truestrength,Truestrength[1]) Then Buy("매수",OnClose,Def,number); if CrossDown(Truestrength,Truestrength[1]) Then Sell("매도",OnClose,Def,number); 위의 수식과 if crossup(Truestrength,Truestrength[1]) Then Buy("매수",OnClose); if CrossDown(Truestrength,Truestrength[1]) Then Sell("매도",OnClose); 아래의 수식으로 했을 때의 매수,매도 타이밍(KQ종합)이 다르게 나옵니다. 위의 수식의 의도는 H-L를 리스크로 보고 계좌 총액의 2%를 리스크로 부담하는 수량만큼만 사자는 의도인데 KQ종합에 적용시키면 타이밍이 다르게 매수,매도가 됩니다. 예를 들자면 총자산 1억일 때 종가 1만원에 H-L이 1천원이라면 H-L을 총자산 1억의 2%인 200만원으로 만들어야 하므로 2천주 매수한다. 이런 개념으로 접근한 것인데 매수 매도 타이밍에 영향을 미치니 어디에서 논리적 오류가 난 것인지 확인 부탁드립니다.
시스템
답변 2
프로필 이미지

예스스탁 예스스탁 답변

2022-09-13 14:05:30

안녕하세요 예스스탁입니다. number=Floor((account/ATRVal)*0.02); number가 1 미만이면 신호가 발생하지 못합니다. 해당 계산내용을 살펴보셔야 합니다. 현재 작성하신 위 내용은 금액을 atr로 나누고 해당 값에서 2%를 취하게 됩니다. 금액의 2%를 atr로 나누게 하셔야 할 것 같습니다. number=Floor(((account*0.02)/ATRVal)); 즐거운 하루되세요 > 마녀58 님이 쓴 글입니다. > 제목 : 리스크 관리 관련 질문입니다. > input : len(3),capital(100000000); var : account(0),profitloss(0),Truestrength(0),Truestrengthsig(0),ATRVal(0),number(0); ATRVal = H-L; Truestrength = TSI(C, 4, 8, 6); account=Capital+NetProfit(); number=Floor((account/ATRVal)*0.02); if crossup(Truestrength,Truestrength[1]) Then Buy("매수",OnClose,Def,number); if CrossDown(Truestrength,Truestrength[1]) Then Sell("매도",OnClose,Def,number); 위의 수식과 if crossup(Truestrength,Truestrength[1]) Then Buy("매수",OnClose); if CrossDown(Truestrength,Truestrength[1]) Then Sell("매도",OnClose); 아래의 수식으로 했을 때의 매수,매도 타이밍(KQ종합)이 다르게 나옵니다. 위의 수식의 의도는 H-L를 리스크로 보고 계좌 총액의 2%를 리스크로 부담하는 수량만큼만 사자는 의도인데 KQ종합에 적용시키면 타이밍이 다르게 매수,매도가 됩니다. 예를 들자면 총자산 1억일 때 종가 1만원에 H-L이 1천원이라면 H-L을 총자산 1억의 2%인 200만원으로 만들어야 하므로 2천주 매수한다. 이런 개념으로 접근한 것인데 매수 매도 타이밍에 영향을 미치니 어디에서 논리적 오류가 난 것인지 확인 부탁드립니다.
프로필 이미지

마녀58

2022-09-16 15:50:21

선물일 경우와 현물일 경우를 나ㅏ누어서 접근해야할듯한데요. number=Floor(((account*0.02)/ATRVal)); 이렇게 입력하고 capital을 100억으로 하더라도 매매타이밍에 변동이 생기는데 Point가 각자의 거래승수로 계산되는 것이 맞나요? > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 리스크 관리 관련 질문입니다. > 안녕하세요 예스스탁입니다. number=Floor((account/ATRVal)*0.02); number가 1 미만이면 신호가 발생하지 못합니다. 해당 계산내용을 살펴보셔야 합니다. 현재 작성하신 위 내용은 금액을 atr로 나누고 해당 값에서 2%를 취하게 됩니다. 금액의 2%를 atr로 나누게 하셔야 할 것 같습니다. number=Floor(((account*0.02)/ATRVal)); 즐거운 하루되세요 > 마녀58 님이 쓴 글입니다. > 제목 : 리스크 관리 관련 질문입니다. > input : len(3),capital(100000000); var : account(0),profitloss(0),Truestrength(0),Truestrengthsig(0),ATRVal(0),number(0); ATRVal = H-L; Truestrength = TSI(C, 4, 8, 6); account=Capital+NetProfit(); number=Floor((account/ATRVal)*0.02); if crossup(Truestrength,Truestrength[1]) Then Buy("매수",OnClose,Def,number); if CrossDown(Truestrength,Truestrength[1]) Then Sell("매도",OnClose,Def,number); 위의 수식과 if crossup(Truestrength,Truestrength[1]) Then Buy("매수",OnClose); if CrossDown(Truestrength,Truestrength[1]) Then Sell("매도",OnClose); 아래의 수식으로 했을 때의 매수,매도 타이밍(KQ종합)이 다르게 나옵니다. 위의 수식의 의도는 H-L를 리스크로 보고 계좌 총액의 2%를 리스크로 부담하는 수량만큼만 사자는 의도인데 KQ종합에 적용시키면 타이밍이 다르게 매수,매도가 됩니다. 예를 들자면 총자산 1억일 때 종가 1만원에 H-L이 1천원이라면 H-L을 총자산 1억의 2%인 200만원으로 만들어야 하므로 2천주 매수한다. 이런 개념으로 접근한 것인데 매수 매도 타이밍에 영향을 미치니 어디에서 논리적 오류가 난 것인지 확인 부탁드립니다.