커뮤니티

당일매매손실합, MaxPositionLoss, GrossLoss

프로필 이미지
새로운세상
2011-03-29 09:23:18
818
글번호 37038
답변완료
안녕하세요... 다음 내용에 관하여 설명 부탁드립니다. 1) 금일 발생한 매매분중 손실부분의 합계를 구하여, 그 합계가 -3pt 이하이면 매매지속 -3pt초과면 매매중지를 하는데, 여기서 (1) 금일 최초진입부터 현재 진입후 청산전인 매매의 손실부분을 포함하여, -3pt 이하면 매매지속 -3pt 초과면 매매중지 (2) 금일 최초진입부터 청산이 완료된 매매의 손실부분이 -3pt 이하면 매매금지 -3pt 초과면 매매중지 이렇게 두가지로 나눠서 수식 부탁드립니다. 2) 포지션함수중 MaxPositionLoss, 전략성과함수중 GrossLoss 라는 것이 있는데, 이 함수들은 어떻게 사용되는 것인지 설명 또는 예를 들어주시면 좋겠습니다. 3) 그리고 이 두가지 함수를 사용하여 위의 1) 내용을 표현할 수도 있는지 알고 싶습니다. 4) 마지막으로 다음과 같이 수식으로 표현했을 때 두가지의 차이점이 무엇인지요 (1) SetstopLoss(1,pointstop); (2) If MaxPositionLoss(0) <= -1 then { ExitLong(); ExitShort(); } 이상입니다. 3월도 이제 몇일 안남았네요.. 좋은 마무리 되시기를 바라며, 미리 감사드립니다~
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2011-03-29 14:42:12

안녕하세요 예스스탁입니다. 1 ################################################# #당일 청산완료된 거래만 계산하여 손익 계산 var : dayPL(0),cnt(0); dayPL = 0; for cnt = 1 to 10{ if sdate == EntryDate(cnt) Then{ dayPL = dayPL+PositionProfit(cnt); } } if dayPL >= -3 Then{ if 매수조건 Then buy(); if 매도조건 Then Sell(); } ####################################################### #미청산분 포함하여 당일 누적손익계산 var : PLR(0),XCommission(0),XSlippage(0),OpenPL(0),dayPL(0),cnt(0); XCommission = ((C*ExitCommission)/100)*CurrentContracts; #%설정 XSlippage = (ExitSlippage)*CurrentContracts; #Pt설정 PLR = 0; for cnt = 1 to 10{ if sdate == EntryDate(cnt) Then{ PLR = PLR+PositionProfit(cnt); } } if MarketPosition() == 0 Then{ OpenPL = 0; dayPL = PLR; } Else{ OpenPL = (PositionProfit-(XCommission+XSlippage)); dayPL = PLR+OpenPL; } if dayPL >= -3 Then{ if 매수조건 Then buy(); if 매도조건 Then Sell(); } 2. MaxPositionLoss(Num) 은 진입이후 최대 손실이 발생했을때의 값입니다. 예를 들어 100에 매수해서 99-98-97-96-97-99(청산) 했다고 가정하면 해당 거래의 손익은 -1이지만 최대로 손실을 보았을 경우에는 -4(96) 가 됩니다. 이 값을 리턴해 주는 것이 MaxPositionLoss이고 MaxPositionLoss(1)은 전거래 MaxPositionLoss(2)는 직전거래 순입니다. 가령 매수이후에 1포인트 이상 손실이 없고 AAA조건이 발생하면 청산과 식을 만들때 사용합니다. if marketposition == 1 and MaxPositionLoss < -1 and AAA then exitlong(); GrossLoss는 차트전체의 청산완료된 거래 중 손실거래의 손실값을 모아서 리턴해주는 함수입니다. 차트의 봉의 갯수에 따라 영향을 받아 특별히 사용이 많은 함수는 아닙니다. 3. 1번 내용은 (이익+손실)을 합해야 하므로 해당 함수는 적당하지 않습니다. 다만 netprofit을 이용해서는 구현가능하고 좀더 짧게 작성됩니다. #미청산 거래를 포함한 손익 계산 var : PLR(0),XCommission(0),XSlippage(0),OpenPL(0),dayPL(0),cnt(0); XCommission = ((C*ExitCommission)/100)*CurrentContracts; #%설정 XSlippage = (ExitSlippage)*CurrentContracts; #Pt설정 if date != date[1] Then var1 = NetProfit[1];#전일마지막봉 기준 NetProfit PLR = NetProfit+var1; if MarketPosition() == 0 Then{ OpenPL = 0; dayPL = PLR; } Else{ OpenPL = (PositionProfit-(XCommission+XSlippage)); dayPL = PLR+OpenPL; } if dayPL >= -3 Then{ if 매수조건 Then buy(); if 매도조건 Then Sell(); } #당일 청산완료된 거래만 계산하여 손익 계산 var : dayPL(0); if date != date[1] Then var1 = NetProfit[1];#전일마지막봉 기준 NetProfit dayPL = NetProfit+var1; if dayPL >= -3 Then{ if 매수조건 Then buy(); if 매도조건 Then Sell(); } 4. (1) SetstopLoss(1,pointstop); (2) If MaxPositionLoss(0) <= -1 then { ExitLong(); ExitShort(); } (1)은 단순 가격관점이고 해당 손절가격이 만족하면 즉시 신호가 발생합니다. (2)은 봉완성시가 기준이 되고 진입이후의 최고손실이 -1이 만족하면 청산하므로 1포인트 딱 손실일때 청산이 나가지는 않습니다. 예를 들어 100에 매수 다음봉의 저가가 99 종가가 99.5라면 MaxPositionLoss이 1을 만족하므로 종가에 청산됩니다. 즉 청산가격은 99.05입니다. 즐거운 하루되세요 > 새로운세상 님이 쓴 글입니다. > 제목 : 당일매매손실합, MaxPositionLoss, GrossLoss > 안녕하세요... 다음 내용에 관하여 설명 부탁드립니다. 1) 금일 발생한 매매분중 손실부분의 합계를 구하여, 그 합계가 -3pt 이하이면 매매지속 -3pt초과면 매매중지를 하는데, 여기서 (1) 금일 최초진입부터 현재 진입후 청산전인 매매의 손실부분을 포함하여, -3pt 이하면 매매지속 -3pt 초과면 매매중지 (2) 금일 최초진입부터 청산이 완료된 매매의 손실부분이 -3pt 이하면 매매금지 -3pt 초과면 매매중지 이렇게 두가지로 나눠서 수식 부탁드립니다. 2) 포지션함수중 MaxPositionLoss, 전략성과함수중 GrossLoss 라는 것이 있는데, 이 함수들은 어떻게 사용되는 것인지 설명 또는 예를 들어주시면 좋겠습니다. 3) 그리고 이 두가지 함수를 사용하여 위의 1) 내용을 표현할 수도 있는지 알고 싶습니다. 4) 마지막으로 다음과 같이 수식으로 표현했을 때 두가지의 차이점이 무엇인지요 (1) SetstopLoss(1,pointstop); (2) If MaxPositionLoss(0) <= -1 then { ExitLong(); ExitShort(); } 이상입니다. 3월도 이제 몇일 안남았네요.. 좋은 마무리 되시기를 바라며, 미리 감사드립니다~