커뮤니티

옳바르게 작성되었는지 확인 부탁드립니다.

프로필 이미지
도토루
2012-04-20 07:59:11
372
글번호 50267
답변완료
1. 초기투자금액은 2000만원 2. 포지션이 없으면 매수진입 3. 진입금액은 총평가금액의 50%만 진입 4. 나머지 50% 금액은 현금보유 5. 현평가수익이 진입한 평가금액보다 +- 10%가 되면 청산 6. 청산 후 포지션이 없으면 누적평가금액의 50%만 진입 나머지는 현금보유 /////////////////////////////////////////////////////////////////////////// Var : 총평가금액(20000000), 현평가수익(0), BarID(0); Var : 현금보유(0); Var : 진입평가금액(0), me진입수량(0), me진입금액(0); If MarketPosition(0) == 0 Then { me진입수량 = int((총평가금액/2)/Close); me진입금액 = Close*me진입수량; 현금보유 = 총평가금액 - me진입금액; Buy("B", OnClose, DEF, me진입수량); } if sDate == EntryDate And sTime[1] == EntryTime Then { BarID = BarIndex; me진입수량 = int((총평가금액/2)/Close); me진입금액 = Close*me진입수량; 현금보유 = 총평가금액 - me진입금액; 진입평가금액 = me진입금액 + 현금보유; } 총평가금액 = close*me진입수량 + 현금보유; 현평가수익 = close*me진입수량 - me진입금액; MessageLog("총평가금액%.0f 현금보유%.0f 수익%.0f 진입%.0f", 총평가금액, 현금보유, 현평가수익, BarID); If 현평가수익/me진입금액*100 > 10.5 Then { ExitLong("Pf", OnClose, DEF); } If 현평가수익/me진입금액*100 < -10 Then { ExitLong("cut", OnClose, DEF); }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2012-04-20 11:26:52

안녕하세요 예스스탁입니다. 식을 수정했습니다. NetProfit등 포지션 관련 함수를 이용하시면 좀더 정확하게 식을 작성할 수 있습니다. 최초 진입은 최초투입금액의 50% 이후에는 이전거래의 손익포함하여 현평가자산을 계산해서 현평가자산의 50%만 진입하는 식입니다. Var : 최초투입금액(20000000); Var : 현평가자산(0),진입수량(0),현진입금액(0),현평가수익(0); 현평가자산 = NetProfit+최초투입금액; if CodeCategory == 1 Then{ #코스피 if BasePrice < 50000 Then 진입수량 = int(int((현평가자산/2)/C)/10)*10; Else 진입수량 = int((현평가자산/2)/C); } if CodeCategory == 2 Then#코스닥 진입수량 = int((현평가자산/2)/C); if CodeCategory == 6 Then#옵션 진입수량 = int((현평가자산/2)/(C*BigPointValue)); If MarketPosition(0) == 0 Then Buy("B", OnClose, DEF,진입수량); if MarketPosition == 1 Then{ 현평가수익 = C*CurrentContracts; 현진입금액 = EntryPrice*CurrentContracts; If 현평가수익 >= 현진입금액*1.10 Then{ ExitLong("Pf"); } If 현평가수익 <= 현진입금액*0.90 then { ExitLong("cut"); } } 의도와 다르시면 전화주시기 바랍니다. 즐거운 하루되세요 > 도토루 님이 쓴 글입니다. > 제목 : 옳바르게 작성되었는지 확인 부탁드립니다. > 1. 초기투자금액은 2000만원 2. 포지션이 없으면 매수진입 3. 진입금액은 총평가금액의 50%만 진입 4. 나머지 50% 금액은 현금보유 5. 현평가수익이 진입한 평가금액보다 +- 10%가 되면 청산 6. 청산 후 포지션이 없으면 누적평가금액의 50%만 진입 나머지는 현금보유 /////////////////////////////////////////////////////////////////////////// Var : 총평가금액(20000000), 현평가수익(0), BarID(0); Var : 현금보유(0); Var : 진입평가금액(0), me진입수량(0), me진입금액(0); If MarketPosition(0) == 0 Then { me진입수량 = int((총평가금액/2)/Close); me진입금액 = Close*me진입수량; 현금보유 = 총평가금액 - me진입금액; Buy("B", OnClose, DEF, me진입수량); } if sDate == EntryDate And sTime[1] == EntryTime Then { BarID = BarIndex; me진입수량 = int((총평가금액/2)/Close); me진입금액 = Close*me진입수량; 현금보유 = 총평가금액 - me진입금액; 진입평가금액 = me진입금액 + 현금보유; } 총평가금액 = close*me진입수량 + 현금보유; 현평가수익 = close*me진입수량 - me진입금액; MessageLog("총평가금액%.0f 현금보유%.0f 수익%.0f 진입%.0f", 총평가금액, 현금보유, 현평가수익, BarID); If 현평가수익/me진입금액*100 > 10.5 Then { ExitLong("Pf", OnClose, DEF); } If 현평가수익/me진입금액*100 < -10 Then { ExitLong("cut", OnClose, DEF); }