커뮤니티

시스템 문의입니다

프로필 이미지
루라라라
2022-12-12 16:04:03
891
글번호 164535
답변완료
일정기간 신고가를 달성하면 매수하고, 이전 진입가에서 일정비율 이상 상승하면 쭉 피라미딩하되, 피라미딩 하면서 점점 매수금액을 줄이는 진입 전략입니다 피라미딩 하는 부분 문의드립니다 ㅠ 일봉차트, onclose로 매수입니다. input : invest_money(10000000),new_high(120), cut_ratio(0.9); // 120일 신고가면 매수, 0.9 비율로 점점 투자 금액을 줄임 var : ex_money(0); // 직전 매수 금액(=직전 매수 수량 * 직전 매수 가격) if MarketPosition == 0 and c > highest(c, new_high)[1] Then { Buy("신고가 진입", OnClose, Def, Floor(invest_money/C)); } if MarketPosition == 1 and c > LatestEntryPrice(0)*(1.1+(MaxEntries/100)) Then { if CurrentContracts > CurrentContracts[1] Then ex_money = LatestEntryPrice(0) * ( CurrentContracts-CurrentContracts[1] ) ; //이전매수금액 = 직전매수가격 * 직전거래수량(=현재보유수량 - 직전보유수량) Buy("피라미딩", OnClose, Def, Floor( (ex_money*cut_ratio) / c ) ); //이전 매수금액의 90%만큼만 매수금액으로 설정하고, 종가로 나눠서 수량 구하기 } 로 만들었는데, 첫 진입은 되는데, 피라미딩이 안됩니다 ㅠ 검토 한번 부탁드리겠습니다...!
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2022-12-13 14:28:18

안녕하세요 예스스탁입니다. if MarketPosition == 1 and c > LatestEntryPrice(0)*(1.1+(MaxEntries/100)) Then { if CurrentContracts > CurrentContracts[1] Then 위 내용때문에 추가진입이 발생하지 못했습니다. 위 내용이면 종가가 직전진입가대비 11% 상승한 봉과 CurrentContracts > CurrentContracts[1] 조건만족한 봉이 동일봉이어야 합니다. 첫진입발생과 11% 상승한봉과는 시차가 있으므로 아래와 같이 수정하시면 됩니다. if MarketPosition == 1 Then { if CurrentContracts > CurrentContracts[1] Then ex_money = LatestEntryPrice(0)*(CurrentContracts-CurrentContracts[1]); if c > LatestEntryPrice(0)*(1.1+(MaxEntries/100)) Then Buy("피라미딩", OnClose, Def, Floor((ex_money*cut_ratio)/ c)); } 즐거운 하루되세요 > 루라라라 님이 쓴 글입니다. > 제목 : 시스템 문의입니다 > 일정기간 신고가를 달성하면 매수하고, 이전 진입가에서 일정비율 이상 상승하면 쭉 피라미딩하되, 피라미딩 하면서 점점 매수금액을 줄이는 진입 전략입니다 피라미딩 하는 부분 문의드립니다 ㅠ 일봉차트, onclose로 매수입니다. input : invest_money(10000000),new_high(120), cut_ratio(0.9); // 120일 신고가면 매수, 0.9 비율로 점점 투자 금액을 줄임 var : ex_money(0); // 직전 매수 금액(=직전 매수 수량 * 직전 매수 가격) if MarketPosition == 0 and c > highest(c, new_high)[1] Then { Buy("신고가 진입", OnClose, Def, Floor(invest_money/C)); } if MarketPosition == 1 and c > LatestEntryPrice(0)*(1.1+(MaxEntries/100)) Then { if CurrentContracts > CurrentContracts[1] Then ex_money = LatestEntryPrice(0) * ( CurrentContracts-CurrentContracts[1] ) ; //이전매수금액 = 직전매수가격 * 직전거래수량(=현재보유수량 - 직전보유수량) Buy("피라미딩", OnClose, Def, Floor( (ex_money*cut_ratio) / c ) ); //이전 매수금액의 90%만큼만 매수금액으로 설정하고, 종가로 나눠서 수량 구하기 } 로 만들었는데, 첫 진입은 되는데, 피라미딩이 안됩니다 ㅠ 검토 한번 부탁드리겠습니다...!