커뮤니티

또하나 여쭤봅니다...

프로필 이미지
연구자
2011-08-01 11:27:37
717
글번호 41488
답변완료
이것저것 해봤는데 안돼서 별수없이 또 여쭤봅니다. 전에 드렸던 질문에 대한 답변으로 익절후 매매진입금지에 대해서 배웠습니다. 똑같은 식으로 exitlong 이나 exitshort 이후 매매진입중지를 추가하고 싶은데 어떻게 붙이는지 아무리해도 모르겠습니다. 조건2 조건3으로 추가해야 할 거 같은데 대충 아래와 같이 추가했는데 그냥 검증은 완료됐다고 나오는데도 작동은 안됩니다. 아예 익절이건 손절이건 한번만이라도 나오면 당일 매매를 중지하고 싶은데 가르쳐 주시면 감사하겠습니다. Condition2 = ExitDate(1) == sDate and IsExitName("exitlong",1); if Condition2 == false then { If CrossUp(c,ma(5)) and marketposition==0 Then { Buy("매수",atlimit); } If CrossDown(c,ma(20)) and marketposition==0 Then { exitlong("매도",atlimit); } } Condition3 = ExitDate(1) == sDate and IsExitName("exitshort",1); if Condition3 == false then { If CrossUp(c,ma(5)) and marketposition==0 Then { exitshort("매수",atlimit); } If CrossDown(c,ma(20)))) and marketposition==0 Then { Sell("매도",atlimit); } }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2011-08-01 12:40:23

안녕하세요? 예스스탁입니다. 진입횟수를 제한하기 위해서라면 아래의 예제 식을 이용해 보시는게 어떨까 합니다. 아래 식은 하루에 한번만 진입을 하도록 작성된 예제 식입니다. #진입횟수 제한 Var : Count(0); Count = 0 ; For Value1 = 0 To 10 { If EntryDate(Value1) == date Then Count = Count + 1; } # 진입/청산식 If count < 1 and CrossUp(c,ma(5)) Then Buy("매수"); If CrossDown(c,ma(20)) Then exitlong("매수청산"); If count < 1 and Crossdown(c,ma(5)) Then sell("매도"); If CrossUp(c,ma(20)))) Then exitshort("매도청산"); 감사합니다. > 연구자 님이 쓴 글입니다. > 제목 : 또하나 여쭤봅니다... > 이것저것 해봤는데 안돼서 별수없이 또 여쭤봅니다. 전에 드렸던 질문에 대한 답변으로 익절후 매매진입금지에 대해서 배웠습니다. 똑같은 식으로 exitlong 이나 exitshort 이후 매매진입중지를 추가하고 싶은데 어떻게 붙이는지 아무리해도 모르겠습니다. 조건2 조건3으로 추가해야 할 거 같은데 대충 아래와 같이 추가했는데 그냥 검증은 완료됐다고 나오는데도 작동은 안됩니다. 아예 익절이건 손절이건 한번만이라도 나오면 당일 매매를 중지하고 싶은데 가르쳐 주시면 감사하겠습니다. Condition2 = ExitDate(1) == sDate and IsExitName("exitlong",1); if Condition2 == false then { If CrossUp(c,ma(5)) and marketposition==0 Then { Buy("매수",atlimit); } If CrossDown(c,ma(20)) and marketposition==0 Then { exitlong("매도",atlimit); } } Condition3 = ExitDate(1) == sDate and IsExitName("exitshort",1); if Condition3 == false then { If CrossUp(c,ma(5)) and marketposition==0 Then { exitshort("매수",atlimit); } If CrossDown(c,ma(20)))) and marketposition==0 Then { Sell("매도",atlimit); } }