커뮤니티

시스템식 질문입니다 - 12793

프로필 이미지
파인애플
2009-12-11 14:52:19
592
글번호 26654
답변완료
Inputs: Length(14); Var : Counter(0), DownAmt(0,data2), UpAmt(0,data2), UpSum(0,data2), DownSum(0,data2); var : UpAvg(0,data2), DownAvg(0,data2),RSIv(0,data2),cnt(0),count(0); var : sumGap(0,data2), gap(0,data2), GO(0,data2), GH(0,data2), GL(0,data2), GC(0,data2); if data2(date)!=data2(date[1]) then { // 날짜가 변경되는 봉에서(분봉에서 첫번째 봉) gap = data2(Open-Close[1]); // 일간갭 sumGap = sumGap+gap; // 일간갭 누적 } GO = data2(O) - sumGap;// 갭보정 시가 GH = data2(H) - sumGap;// 갭보정 고가 GL = data2(L) - sumGap;// 갭보정 저가 GC = data2(C) - sumGap; // 갭보정 종가 If data2(CurrentBar) == 1 AND Length > 0 Then Begin UpSum = 0; DownSum = 0; For Counter = 0 To Length - 1 Begin UpAmt = GC[Counter] - GC[Counter+1]; If UpAmt >= 0 Then DownAmt = 0; Else Begin DownAmt = -UpAmt; UpAmt = 0; End; UpSum = UpSum + UpAmt; DownSum = DownSum + DownAmt; End; UpAvg = UpSum / Length; DownAvg = DownSum / Length; End Else If data2(CurrentBar) > 1 AND Length > 0 Then Begin UpAmt = GC[0] - GC[1]; If UpAmt >= 0 Then DownAmt = 0; Else Begin DownAmt = -UpAmt; UpAmt = 0; End; UpAvg = (UpAvg[1] * (Length - 1) + UpAmt) / Length; DownAvg = (DownAvg[1] * (Length - 1) + DownAmt) / Length; End; If UpAvg + DownAvg <> 0 Then RSIv = 100 * UpAvg / (UpAvg + DownAvg); Else RSIv = 0; count = 0; for cnt = 0 to 20{ if sdate == EntryDate(cnt) Then count = count+1; } if crossup(RSIV,60) and count == 0 and stime > 90000 and stime < 100000 and CodeCategoryEx == 31 ///////추가로직 Then Buy(); if CrossDown(RSIV,20) and count == 0 and stime > 90000 and stime < 100000 and CodeCategoryEx == 32 ////////추가로직 Then Buy(); 12793 식을 조금 변경해 보았습니다 시스템 설정을 주종목 콜종목 타종목 갭보정안한선물 주종목 풋종목 타종목 갭보정안한선물 이렇게 2개 차트를 펼쳐놓은다음 위식을 시스템을 둘다 설정해 놓으면 매수신호(콜종목 풋종목 BUY 시그널)인 각각 선물RSI 60/40 크로스 업/다운 으로 크로스업 일때 콜종목만 크로스다운 일때 풋종목만 매수가 되는건지요? 추가로 콜진입명 풋진입명을 따로하여 각 1회씩 매매횟수제한 할 것입니다. 감사합니다
시스템
답변 2
프로필 이미지

예스스탁 예스스탁 답변

2009-12-11 16:11:45

안녕하세요 예스스탁입니다 예 맞습니다. 코드카테고리를 사용하여 하나의 식으로 만드실 수도 있습니다. 즐거운 하루되세요 > 파인애플 님이 쓴 글입니다. > 제목 : 시스템식 질문입니다 - 12793 > Inputs: Length(14); Var : Counter(0), DownAmt(0,data2), UpAmt(0,data2), UpSum(0,data2), DownSum(0,data2); var : UpAvg(0,data2), DownAvg(0,data2),RSIv(0,data2),cnt(0),count(0); var : sumGap(0,data2), gap(0,data2), GO(0,data2), GH(0,data2), GL(0,data2), GC(0,data2); if data2(date)!=data2(date[1]) then { // 날짜가 변경되는 봉에서(분봉에서 첫번째 봉) gap = data2(Open-Close[1]); // 일간갭 sumGap = sumGap+gap; // 일간갭 누적 } GO = data2(O) - sumGap;// 갭보정 시가 GH = data2(H) - sumGap;// 갭보정 고가 GL = data2(L) - sumGap;// 갭보정 저가 GC = data2(C) - sumGap; // 갭보정 종가 If data2(CurrentBar) == 1 AND Length > 0 Then Begin UpSum = 0; DownSum = 0; For Counter = 0 To Length - 1 Begin UpAmt = GC[Counter] - GC[Counter+1]; If UpAmt >= 0 Then DownAmt = 0; Else Begin DownAmt = -UpAmt; UpAmt = 0; End; UpSum = UpSum + UpAmt; DownSum = DownSum + DownAmt; End; UpAvg = UpSum / Length; DownAvg = DownSum / Length; End Else If data2(CurrentBar) > 1 AND Length > 0 Then Begin UpAmt = GC[0] - GC[1]; If UpAmt >= 0 Then DownAmt = 0; Else Begin DownAmt = -UpAmt; UpAmt = 0; End; UpAvg = (UpAvg[1] * (Length - 1) + UpAmt) / Length; DownAvg = (DownAvg[1] * (Length - 1) + DownAmt) / Length; End; If UpAvg + DownAvg <> 0 Then RSIv = 100 * UpAvg / (UpAvg + DownAvg); Else RSIv = 0; count = 0; for cnt = 0 to 20{ if sdate == EntryDate(cnt) Then count = count+1; } if crossup(RSIV,60) and count == 0 and stime > 90000 and stime < 100000 and CodeCategoryEx == 31 ///////추가로직 Then Buy(); if CrossDown(RSIV,20) and count == 0 and stime > 90000 and stime < 100000 and CodeCategoryEx == 32 ////////추가로직 Then Buy(); 12793 식을 조금 변경해 보았습니다 시스템 설정을 주종목 콜종목 타종목 갭보정안한선물 주종목 풋종목 타종목 갭보정안한선물 이렇게 2개 차트를 펼쳐놓은다음 위식을 시스템을 둘다 설정해 놓으면 매수신호(콜종목 풋종목 BUY 시그널)인 각각 선물RSI 60/40 크로스 업/다운 으로 크로스업 일때 콜종목만 크로스다운 일때 풋종목만 매수가 되는건지요? 추가로 콜진입명 풋진입명을 따로하여 각 1회씩 매매횟수제한 할 것입니다. 감사합니다
프로필 이미지

파인애플

2009-12-11 16:26:48

..