커뮤니티

문의 드립니다.

프로필 이미지
아틀라스
2012-07-19 23:24:40
286
글번호 53072
답변완료
안녕하십니까! 수식 중에서 아래의 내용을 확인하여 주시기 바랍니다. if MarketPosition == 1 and countif(CurrentContracts < CurrentContracts,BarsSinceEntry) < 1 Then 감사합니다. 안녕하세요 예스스탁입니다. input : 투입금액(10000000); if CodeCategory == 1 Then #코스피 { if BasePrice < 50000 Then { Var1 = int(int((투입금액*0.2)/C)/10)*10; Var2 = int(int((투입금액*0.3)/C)/10)*10; Var3 = int(int((투입금액*0.5)/C)/10)*10; Var4 = int(int((투입금액)/C)/10)*10; } Else { Var1 = int((투입금액*0.2)/C); Var2 = int((투입금액*0.3)/C); Var3 = int((투입금액*0.5)/C); Var4 = int((투입금액)/C); } } if CodeCategory == 2 Then#코스닥 { Var1 = int((투입금액*0.2)/C); Var2 = int((투입금액*0.3)/C); Var3 = int((투입금액*0.5)/C); Var4 = int((투입금액)/C); } if CodeCategory == 6 Then#옵션 { Var1 = int((투입금액*0.2)/(C*BigPointValue)); Var2 = int((투입금액*0.3)/(C*BigPointValue)); Var3 = int((투입금액*0.5)/(C*BigPointValue)); Var4 = int((투입금액)/(C*BigPointValue)); } value1 = ma(c,60); value2 = ma(c,120); if MarketPosition == 0 Then { if C < value1 Then buy("b1",OnClose,def,var1); if C >= value1 Then buy("b2",OnClose,def,var3); if C >= value2 Then buy("b3",OnClose,def,var4); } if MarketPosition == 1 and countif(CurrentContracts < CurrentContracts,BarsSinceEntry) < 1 Then { if IsEntryName("b1") == true Then { if CurrentEntries == 1 and crossup(C,value1) Then buy("B11",OnClose,def,var2); if CurrentEntries == 2 and crossup(C,value1) Then buy("B12",OnClose,def,var3); } if IsEntryName("b2") == true Then { if CurrentEntries == 1 and crossup(C,value2) Then buy("B21",OnClose,def,var3); } } if MarketPosition == 1 Then { if CodeCategory == 1 Then #코스피 { if BasePrice < 50000 Then Var11 = int(CurrentContracts*0.5/10)*10; Else Var11 = int(CurrentContracts*0.5); } if CodeCategory == 2 Then#코스닥 Var11 = int(CurrentContracts*0.5); if CodeCategory == 6 Then#옵션 Var11 = int(CurrentContracts*0.5); if CurrentContracts == MaxContracts and CrossDown(c,value2) Then exitlong("bx1",OnClose,def,"",var11,1); if CurrentContracts < MaxContracts and CrossDown(c,value1) Then exitlong("bx2",OnClose,def,"",var11,1); } 즐거운 하루되세요
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2012-07-20 14:56:28

안녕하세요 예스스탁입니다. 죄송합니다.식에 오류가 있었습니다. 아래와 같이 수정해 사용하셔야 합니다. 진입이후에 청산이 한번도 발생하지 않았다는 의미입니다. if MarketPosition == 1 and countif(CurrentContracts < CurrentContracts[1],BarsSinceEntry) < 1 Then 즐거운 하루되세요 > 아틀라스 님이 쓴 글입니다. > 제목 : 문의 드립니다. > 안녕하십니까! 수식 중에서 아래의 내용을 확인하여 주시기 바랍니다. if MarketPosition == 1 and countif(CurrentContracts < CurrentContracts,BarsSinceEntry) < 1 Then 감사합니다. 안녕하세요 예스스탁입니다. input : 투입금액(10000000); if CodeCategory == 1 Then #코스피 { if BasePrice < 50000 Then { Var1 = int(int((투입금액*0.2)/C)/10)*10; Var2 = int(int((투입금액*0.3)/C)/10)*10; Var3 = int(int((투입금액*0.5)/C)/10)*10; Var4 = int(int((투입금액)/C)/10)*10; } Else { Var1 = int((투입금액*0.2)/C); Var2 = int((투입금액*0.3)/C); Var3 = int((투입금액*0.5)/C); Var4 = int((투입금액)/C); } } if CodeCategory == 2 Then#코스닥 { Var1 = int((투입금액*0.2)/C); Var2 = int((투입금액*0.3)/C); Var3 = int((투입금액*0.5)/C); Var4 = int((투입금액)/C); } if CodeCategory == 6 Then#옵션 { Var1 = int((투입금액*0.2)/(C*BigPointValue)); Var2 = int((투입금액*0.3)/(C*BigPointValue)); Var3 = int((투입금액*0.5)/(C*BigPointValue)); Var4 = int((투입금액)/(C*BigPointValue)); } value1 = ma(c,60); value2 = ma(c,120); if MarketPosition == 0 Then { if C < value1 Then buy("b1",OnClose,def,var1); if C >= value1 Then buy("b2",OnClose,def,var3); if C >= value2 Then buy("b3",OnClose,def,var4); } if MarketPosition == 1 and countif(CurrentContracts < CurrentContracts,BarsSinceEntry) < 1 Then { if IsEntryName("b1") == true Then { if CurrentEntries == 1 and crossup(C,value1) Then buy("B11",OnClose,def,var2); if CurrentEntries == 2 and crossup(C,value1) Then buy("B12",OnClose,def,var3); } if IsEntryName("b2") == true Then { if CurrentEntries == 1 and crossup(C,value2) Then buy("B21",OnClose,def,var3); } } if MarketPosition == 1 Then { if CodeCategory == 1 Then #코스피 { if BasePrice < 50000 Then Var11 = int(CurrentContracts*0.5/10)*10; Else Var11 = int(CurrentContracts*0.5); } if CodeCategory == 2 Then#코스닥 Var11 = int(CurrentContracts*0.5); if CodeCategory == 6 Then#옵션 Var11 = int(CurrentContracts*0.5); if CurrentContracts == MaxContracts and CrossDown(c,value2) Then exitlong("bx1",OnClose,def,"",var11,1); if CurrentContracts < MaxContracts and CrossDown(c,value1) Then exitlong("bx2",OnClose,def,"",var11,1); } 즐거운 하루되세요