커뮤니티

주식 피라미딩 - 2

프로필 이미지
파라독스
2009-08-28 09:45:28
718
글번호 24443
답변완료
input : myaccount(10000000); if MarketPosition == 0 and Condition1 Then buy("B",OnClose,def,1); if MarketPosition == 1 and CurrentEntries < 40 Then{ buy("bb",AtStop,EntryPrice+(500*CurrentEntries)); } if MarketPosition == 1 then{ ExitLong("bx1",AtStop,AvgEntryPrice*0.9); if OpenPositionProfit <= -(myaccount*0.05) Then exitlong("bx2",AtStop,AvgEntryPrice*0.9); } 한봉에 하나의 신호만 발생하게 됩니다. 또한 피라미딩시 첫진입가격과 평균단가를 제외하고는 값을 알수 없습니다. 평균단가대1ㅣ 10% 하락시 청산으로 작성했습니다. ======================================================================== 한봉에 하나의 신호만 발생하기 때문에 값을 알 수 없는지요? 첫 진입가격에서 500원 이상 상승시 봉 완성시에 첫 추가 매수, 첫 진입가격에서 1000원 이상 상승으로 봉 완성시에 두번째 추가 매수... 이런 식으로 하면 각 진입 가격을 저장해서 총손익을 추적할 수 있을 거 같습니다. 그런 형태로 알려주시면 감사하겠습니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2009-08-28 14:18:43

안녕하세요 예스스탁입니다. 총손익은 포지션 함수인 PositionProfit이나 OpenPositionProfit로 값을 리턴받을 수 있습니다. 말씀하시는 데로 onclose로 수식으로 작성하면 모든 진입가를 저장하여 계산가능하지만 위 함수를 사용하는 것과 다름이 없습니다. 또한 onclose는 봉의 종가르 책정되므로 500단위와는 많이 상이하게 됩니다.그러므로 atstop을 사용해야 하는데 atstop의 경우도 지정된 가격 이상에서 주문이 발생하므로 500단위로 맞지 않는 가격이 있을 수 있습니다. 청산식을 현재까지 진입한 가격대비 5%이상 총손실이 나면 청산하게 작성했습니다. input : myaccount(10000000); var : sum(0),cnt(0); if MarketPosition == 0 Then buy("B",OnClose,def,1); if MarketPosition == 1 and CurrentEntries < 40 Then{ buy("bb",AtStop,EntryPrice+(500*CurrentEntries)); } # 현재까지 진입한 금액 sum = 0; if MarketPosition == 1 Then{ for cnt = 1 to CurrentEntries{ sum = sum+(EntryPrice+(500*(cnt-1))); } } if MarketPosition == 1 then{ ExitLong("bx1",AtStop,AvgEntryPrice*0.9); if OpenPositionProfit <= -(sum*0.05) Then exitlong("bx2",AtStop,AvgEntryPrice*0.9); } 즐거운 하루되세요 > 파라독스 님이 쓴 글입니다. > 제목 : 주식 피라미딩 - 2 > input : myaccount(10000000); if MarketPosition == 0 and Condition1 Then buy("B",OnClose,def,1); if MarketPosition == 1 and CurrentEntries < 40 Then{ buy("bb",AtStop,EntryPrice+(500*CurrentEntries)); } if MarketPosition == 1 then{ ExitLong("bx1",AtStop,AvgEntryPrice*0.9); if OpenPositionProfit <= -(myaccount*0.05) Then exitlong("bx2",AtStop,AvgEntryPrice*0.9); } 한봉에 하나의 신호만 발생하게 됩니다. 또한 피라미딩시 첫진입가격과 평균단가를 제외하고는 값을 알수 없습니다. 평균단가대1ㅣ 10% 하락시 청산으로 작성했습니다. ======================================================================== 한봉에 하나의 신호만 발생하기 때문에 값을 알 수 없는지요? 첫 진입가격에서 500원 이상 상승시 봉 완성시에 첫 추가 매수, 첫 진입가격에서 1000원 이상 상승으로 봉 완성시에 두번째 추가 매수... 이런 식으로 하면 각 진입 가격을 저장해서 총손익을 추적할 수 있을 거 같습니다. 그런 형태로 알려주시면 감사하겠습니다.