커뮤니티

지표구현

프로필 이미지
파문일기
2012-02-02 19:02:58
463
글번호 47291
답변완료
안녕하세요 옵션을 콜(data1) 풋(data2)을 교차차트로 한화면에 겹쳐서 표시하고, 지난 만기일전 12일 전부터 만기일까지의 양옵션 저가를 챠트에 지표로 구현하고 싶습니다. { va2 = (date - int(date/100)*100); //일 va3 = (DayOfWeek(date)); //요일 var : lowest13(0), lowest23(0),cond21(false),cond22(false); array : ndate[200](0); ndate[1]=20120112;ndate[2]=20120209;ndate[3]=20120315;ndate[4]=20120412;ndate[5]=20120510; ndate[6]=20120614;ndate[7]=20120712;ndate[8]=20120809;ndate[9]=20120913;ndate[10]=20121011; ndate[11]=20121108;ndate[12]=20121213; for cnt = 1 to 12 {#최종값을 배열의 마지막방의 전방까지만 입력 if sdate > ndate[cnt] and sdate <= ndate[cnt+1] then 최근만기일 = ndate[cnt]; 전만기범위 = JulianToDate(DateToJulian(최근만기일)-12) ; } if date < 전만기범위 Then cond21 = false; if Cond21 == false and data1(date != date[1]) and date >= 전만기범위 Then { if data1(index==0) Then lowest13 = data1(DayLow(1)); if data1(index>0) Then{ if data1(DayLow(1)) < lowest13 Then lowest13 = data1(DayLow(1)); if va2 >= 8 and va2 <= 14 and va3 == 4 then pred1 = lowest13; cond21 = true;} plot62(pred1,"저가1",BLUE,2); if date < 전만기범위 Then cond22 = false; if Cond22 == false and data2(date != date[1]) and date >= 전만기범위 Then { if data2(index==0) Then lowest23 = data1(lowd(1)); if data2(index>0) Then{ if data2(lowd(1)) < lowest23 Then lowest23 = data1(DayLow(1)); if va2 >= 8 and va2 <= 14 and va3 == 4 then pred2 = lowest23; cond22 = true;} plot63(pred2,"저가2",BLUE,2); 감사합니다.
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2012-02-02 19:19:24

안녕하세요 예스스탁입니다. 1, 최근만기일의 12일전 부터 최근만기일까지 data1,data2의 저가는 아래와 같이 작성하시면 됩니다. var : D1lowest(0,data1),D2Lowest(0,data2),Month(0,data1),최근만기일(0); array : ndate[200](0,data1); ndate[0]=20110108;#전해 마지막 만기일 ndate[1]=20120112;ndate[2]=20120209;ndate[3]=20120315;ndate[4]=20120412;ndate[5]=20120510; ndate[6]=20120614;ndate[7]=20120712;ndate[8]=20120809;ndate[9]=20120913;ndate[10]=20121011; ndate[11]=20121108;ndate[12]=20121213; Month = round(Int(FracPortion(CurrentDate/10000)*100),0); if CurrentDate > ndate[month] Then 최근만기일 = ndate[month]; Else 최근만기일 = ndate[month-1]; if data1(DateToJulian(sdate[1]) < DateToJulian(최근만기일)-12 And DateToJulian(sdate) >= DateToJulian(최근만기일)-12) Then D1Lowest = data1(L); if data2(DateToJulian(sdate[1]) < DateToJulian(최근만기일)-12 And DateToJulian(sdate) >= DateToJulian(최근만기일)-12) Then D2Lowest = data2(L); if sdate <= 최근만기일 Then{ if data1(L) < D1Lowest Then D1Lowest = data1(L); if data2(L) < D2Lowest Then D2Lowest = data2(L); } if DateToJulian(sdate) >= DateToJulian(최근만기일)-12 Then{ plot1(D1Lowest); plot2(D2Lowest); } 2. 최근 만기일의 12일 전부터 현재까지의 data1.data2 최저가는 아래와 같습니다 var : D1lowest(0,data1),D2Lowest(0,data2),Month(0,data1),최근만기일(0); array : ndate[200](0,data1); ndate[0]=20110108;#전해 마지막 만기일 ndate[1]=20120112;ndate[2]=20120209;ndate[3]=20120315;ndate[4]=20120412;ndate[5]=20120510; ndate[6]=20120614;ndate[7]=20120712;ndate[8]=20120809;ndate[9]=20120913;ndate[10]=20121011; ndate[11]=20121108;ndate[12]=20121213; Month = round(Int(FracPortion(CurrentDate/10000)*100),0); if CurrentDate > ndate[month] Then 최근만기일 = ndate[month]; Else 최근만기일 = ndate[month-1]; if data1(DateToJulian(sdate[1]) < DateToJulian(최근만기일)-12 And DateToJulian(sdate) >= DateToJulian(최근만기일)-12) Then D1Lowest = data1(L); if data2(DateToJulian(sdate[1]) < DateToJulian(최근만기일)-12 And DateToJulian(sdate) >= DateToJulian(최근만기일)-12) Then D2Lowest = data2(L); if data1(L) < D1Lowest Then D1Lowest = data1(L); if data2(L) < D2Lowest Then D2Lowest = data2(L); if DateToJulian(sdate) >= DateToJulian(최근만기일)-12 Then{ plot1(D1Lowest); plot2(D2Lowest); } 즐거운 하루되세요 > 파문일기 님이 쓴 글입니다. > 제목 : 지표구현 > 안녕하세요 옵션을 콜(data1) 풋(data2)을 교차차트로 한화면에 겹쳐서 표시하고, 지난 만기일전 12일 전부터 만기일까지의 양옵션 저가를 챠트에 지표로 구현하고 싶습니다. { va2 = (date - int(date/100)*100); //일 va3 = (DayOfWeek(date)); //요일 var : lowest13(0), lowest23(0),cond21(false),cond22(false); array : ndate[200](0); ndate[1]=20120112;ndate[2]=20120209;ndate[3]=20120315;ndate[4]=20120412;ndate[5]=20120510; ndate[6]=20120614;ndate[7]=20120712;ndate[8]=20120809;ndate[9]=20120913;ndate[10]=20121011; ndate[11]=20121108;ndate[12]=20121213; for cnt = 1 to 12 {#최종값을 배열의 마지막방의 전방까지만 입력 if sdate > ndate[cnt] and sdate <= ndate[cnt+1] then 최근만기일 = ndate[cnt]; 전만기범위 = JulianToDate(DateToJulian(최근만기일)-12) ; } if date < 전만기범위 Then cond21 = false; if Cond21 == false and data1(date != date[1]) and date >= 전만기범위 Then { if data1(index==0) Then lowest13 = data1(DayLow(1)); if data1(index>0) Then{ if data1(DayLow(1)) < lowest13 Then lowest13 = data1(DayLow(1)); if va2 >= 8 and va2 <= 14 and va3 == 4 then pred1 = lowest13; cond21 = true;} plot62(pred1,"저가1",BLUE,2); if date < 전만기범위 Then cond22 = false; if Cond22 == false and data2(date != date[1]) and date >= 전만기범위 Then { if data2(index==0) Then lowest23 = data1(lowd(1)); if data2(index>0) Then{ if data2(lowd(1)) < lowest23 Then lowest23 = data1(DayLow(1)); if va2 >= 8 and va2 <= 14 and va3 == 4 then pred2 = lowest23; cond22 = true;} plot63(pred2,"저가2",BLUE,2); 감사합니다.