커뮤니티

문의

프로필 이미지
털보
2009-10-06 14:45:13
599
글번호 25172
답변완료
분할 진입과 청산식을 같이 넣으려니 잘안먹히네요 부탁 드립니다, 예제)) 5/20 골드시 초기2개진입 1개는 +1포청산후 >> 나머지 한개 보유중이면서, 5/20 다시 골드나면 다시한개추가(총2개) 두번째 진입분은 +2포청산(한개만) 나머지 한개는 계속보유. 이해가시죠. 그러니까 처음 두개 들어가서 한개는 계속보유하고, +1포에 한개를 청산, 재진입 다시 +2포청산하는식 입니다. 부탁 드립니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2009-10-06 16:28:05

안녕하세요 예스스탁입니다. 1. 2계약 진입 -> 1계약 청산 -> 1계약추가진입 -> 1계약청산 -> 끝(추가진입/청산없음) var : BB(0); if MarketPosition == 0 and CrossUp(ma(C,5),ma(c,20)) Then buy("b1",OnClose,def,2); if MarketPosition == 1 Then{ if CurrentContracts > CurrentContracts[1] Then{ BB = C[1]; } if CurrentContracts == 1 and countif(CurrentContracts > CurrentContracts[1],BarsSinceEntry) == 1 Then{ if crossup(ma(c,5),ma(c,20)) Then buy("Bb",OnClose,def,1); } if Lowest(CurrentContracts,BarsSinceEntry) == 2 and CurrentContracts == 2 Then exitlong("bX1",atlimit,BB+1,"",1,1); if Lowest(CurrentContracts,BarsSinceEntry) == 1 and CurrentContracts == 2 Then exitlong("bX2",atlimit,BB+2,"",1,1); } 2.재진입 다시 +2포청산이 계속 반복되길 의도하시면 아래식을 사용하시면 됩니다. var : BB(0); if MarketPosition == 0 and CrossUp(ma(C,5),ma(c,20)) Then buy("b1",OnClose,def,2); if MarketPosition == 1 Then{ if CurrentContracts > CurrentContracts[1] Then{ BB = C[1]; } if CurrentContracts == 1 Then{ if crossup(ma(c,5),ma(c,20)) Then buy("BB",OnClose,def,1); } if Lowest(CurrentContracts,BarsSinceEntry) == 2 and CurrentContracts == 2 Then exitlong("bX1",atlimit,BB+1,"",1,1); if Lowest(CurrentContracts,BarsSinceEntry) == 1 and CurrentContracts == 2 Then exitlong("bX2",atlimit,BB+2,"",1,1); } 즐거운 하루되세요 > 털보 님이 쓴 글입니다. > 제목 : 문의 > 분할 진입과 청산식을 같이 넣으려니 잘안먹히네요 부탁 드립니다, 예제)) 5/20 골드시 초기2개진입 1개는 +1포청산후 >> 나머지 한개 보유중이면서, 5/20 다시 골드나면 다시한개추가(총2개) 두번째 진입분은 +2포청산(한개만) 나머지 한개는 계속보유. 이해가시죠. 그러니까 처음 두개 들어가서 한개는 계속보유하고, +1포에 한개를 청산, 재진입 다시 +2포청산하는식 입니다. 부탁 드립니다.