커뮤니티

질문입니다.

프로필 이미지
회원
2013-08-22 06:26:56
95
글번호 66693
답변완료
1.분봉에서 당일의 시가보다 1%이상 상승한 분봉 종가가 발생하면 1 아니면 0를 나타내는 수식부탁드립니다. 2.분봉에서 당일의 시가보다 큰 양봉의 갯수를 나타내는 수식 부탁드립니다. 3.피라미딩으로 진입청산을 구현하였는데... 진입이 2회가 발생한 상황에서 전체잔고의 30%청산 수식을 작성하였더니 30%청산이 2회가 되어 총 60%의 잔고가 청산됩니다. 진입이 3회면 90%청산이 이루어집니다....진입횟수를 곱해서 청산하게 되는데 이를 30%로만 청산하려면 어떻게 해야하나요?
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2013-08-22 10:00:36

안녕하세요 예스스탁입니다. 1. if C >= dayopen*1.01 Then var1 = 1; Else var1 = 0; plot1(var1); 2. if date != date[1] Then var1 = 0; if C > dayopen and C > O Then var1 = var1+1; plot1(var1); 3. 해당 부분은 수식이 있어야 정확히 작성해 볼수 잇습니다. 수식에서 분할청산을 구현하실 때는 그 분할의 경우의 수를 고려해서 작성해 가야 합니다. 청산함수는 한개당 진입의 횟수만큼 발동을 하게 되므로 만약 한번만 발생하게 하시려면 한번만 발생하게 하는 조건을 if문으로 지정해 주어야 합니다. if MarketPosition == 1 Then{ if 청산조건 and countif(CurrentContracts < CurrentContracts[1],BarsSinceEntry) < 1 Then ExitLong("bx",OnClose,def,"",int(MaxContracts*0.3),1); } 위와 같이 작성하시면 특정청산조건이 만족하고 현재 포지션 진행중에 청산이 한번도 발생하지 않을때 발생하게 됩니다 아래와 같이 작성하시면 특정조건이 처음 한번 만족했을때만 청산이 발생하고 이후에는 발생하지 않게 됩니다. if MarketPosition == 1 Then{ if 청산조건 and countif(청산조건,BarsSinceEntry) == 1 Then ExitLong("bx",OnClose,def,"",int(MaxContracts*0.3),1); } 식작성에 참고하시기 바랍니다. 즐거운 하루되세요 > HI_JAEYUN01 님이 쓴 글입니다. > 제목 : 질문입니다. > 1.분봉에서 당일의 시가보다 1%이상 상승한 분봉 종가가 발생하면 1 아니면 0를 나타내는 수식부탁드립니다. 2.분봉에서 당일의 시가보다 큰 양봉의 갯수를 나타내는 수식 부탁드립니다. 3.피라미딩으로 진입청산을 구현하였는데... 진입이 2회가 발생한 상황에서 전체잔고의 30%청산 수식을 작성하였더니 30%청산이 2회가 되어 총 60%의 잔고가 청산됩니다. 진입이 3회면 90%청산이 이루어집니다....진입횟수를 곱해서 청산하게 되는데 이를 30%로만 청산하려면 어떻게 해야하나요?