커뮤니티

시스템식 부탁드립니다.

프로필 이미지
항인내
2011-04-24 16:21:23
606
글번호 37894
답변완료

첨부 이미지

초보라 시스템식 작성시 이해할 수 있도록 주석을 자세히 달이주시길 부탁 드립니다. 아래는 제가 작성하다 잘 되지 않아 고민하고 있는 수식입니다. 많ㅇ느 손질 해주세요. var : mav(0),mav1(0),mav2(0),malow(0),mahigh(0); if date != date[1] Then{ Condition1 = False; Condition2 = False; Condition3 = False; Condition4 = False; } mav = ma(C,1); mav1 = ma(C,10); mav2 = ma(C,40); if Condition1 ==false and CrossDown(mav1,mav2) then{ Condition1 = true; var1 = c; #크로스 값 저장 var2 = index; } #데드후 mav 최저가 계산 if CrossDown(mav1,mav2) Then{ Condition2 = true; #당일 발생했음을 나타냄 maLow = c; var3 = index; #데드후 최저값 인덱스 저장 } #데드후 mav값중 최저값 계산 if C < mav2 and c < malow Then malow = c; #이평40 위에서 mav 최고가 계산 if Crossup(c,mav2) Then{ Condition3 = true; #당일 발생했음을 나타냄 mahigh = c; var4 = index; #이평 기준선 상향시의 인덱스 저장 } #이평40 위에서 mav중 최고값 계산 if C > mav2 and c > mahigh Then mahigh = c; #데드값과 mahigh값 비교 if var2 < var3 and var3< var4 and #발생순서 지정 Condition1 == true and Condition2 == true and Condition3 == true and mahigh >= var1 Then{ Condition4 = true;#당일 발생했음을 나타냄 var5= index; } # 매수 if var2 < var3 and var3< var4 and var4 < var5 and #발생순서 지정 Condition1 == true and Condition2 == true and Condition3 == true and Condition4 == true and malow < c and c < mahigh and CrossUp(mav1,c) then # 당일 모두 발생 buy(); # 매수청산 If CrossDown(c,mav1) Then Sell(); if CrossDown(c,malow) Then ExitLong(); 감사합니다.
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2011-04-25 13:49:37

안녕하세요 예스스탁입니다. var1 = ma(c,10); var2 = ma(C,40); # 날짜가 변경되거나 데드크로스가 나면 Condition1을 false로 설정하여 # 다시 데드크로스가 발생했을때 매수하게 함 if date != date[1] or CrossDown(var1,var2) then Condition1 = false; # 10 -40 데드크로스 if CrossDown(var1,var2) Then{ Condition1 = true; #데드크로스 발생했음을 표기 value1 = C;#데드크로스봉의 종가 value2 = C;#데드크로스 최초 최고값을 데드크로스봉의 종가로 설정 value3 = C;#데드크로스 최초 최저값을 데드크로스봉의 종가로 설정 } # 10-40 데드크로스 이후의 종가상 최고가와 최저가 계산 if C > value2 Then value2 = C; if C < value3 Then value3 = C; # 10-40 데드크로스 발생햇고 # 현재 종가가 최고가 보다 작고 # 현재 종가가 최조가 보다 크고 # 10이평을 상향돌파하면 매수 if Condition1 == true and C < value2 and C > value3 and Crossup(c,var1) Then buy(); # 청산 if MarketPosition == 1 Then{ #진입시점의 이전의 10-40 데드크로스 이후의 최저가를 손절가로 사용 exitlong("bx1",AtStop,value3[BarsSinceEntry]); # 종가가 진입 이전의 10-40 데드크로스 이후의 최고가보다 크거나 최저가보다 작고 # 종가가 10이평 하향이탈하면 청산 if (C > value2[BarsSinceEntry] or C < value3[BarsSinceEntry]) and CrossDown(c,var1) Then ExitLong("bx2"); } 즐거운 하루되세요 > 항인내 님이 쓴 글입니다. > 제목 : 시스템식 부탁드립니다. > 초보라 시스템식 작성시 이해할 수 있도록 주석을 자세히 달이주시길 부탁 드립니다. 아래는 제가 작성하다 잘 되지 않아 고민하고 있는 수식입니다. 많ㅇ느 손질 해주세요. var : mav(0),mav1(0),mav2(0),malow(0),mahigh(0); if date != date[1] Then{ Condition1 = False; Condition2 = False; Condition3 = False; Condition4 = False; } mav = ma(C,1); mav1 = ma(C,10); mav2 = ma(C,40); if Condition1 ==false and CrossDown(mav1,mav2) then{ Condition1 = true; var1 = c; #크로스 값 저장 var2 = index; } #데드후 mav 최저가 계산 if CrossDown(mav1,mav2) Then{ Condition2 = true; #당일 발생했음을 나타냄 maLow = c; var3 = index; #데드후 최저값 인덱스 저장 } #데드후 mav값중 최저값 계산 if C < mav2 and c < malow Then malow = c; #이평40 위에서 mav 최고가 계산 if Crossup(c,mav2) Then{ Condition3 = true; #당일 발생했음을 나타냄 mahigh = c; var4 = index; #이평 기준선 상향시의 인덱스 저장 } #이평40 위에서 mav중 최고값 계산 if C > mav2 and c > mahigh Then mahigh = c; #데드값과 mahigh값 비교 if var2 < var3 and var3< var4 and #발생순서 지정 Condition1 == true and Condition2 == true and Condition3 == true and mahigh >= var1 Then{ Condition4 = true;#당일 발생했음을 나타냄 var5= index; } # 매수 if var2 < var3 and var3< var4 and var4 < var5 and #발생순서 지정 Condition1 == true and Condition2 == true and Condition3 == true and Condition4 == true and malow < c and c < mahigh and CrossUp(mav1,c) then # 당일 모두 발생 buy(); # 매수청산 If CrossDown(c,mav1) Then Sell(); if CrossDown(c,malow) Then ExitLong(); 감사합니다.