커뮤니티

근사치 상대 종목 찾기

프로필 이미지
스퍼트시커
2016-09-12 11:16:00
141
글번호 101891
답변완료
항상 신속하고 상세하게 답변 주셔서 많은 도움을 받고 있습니다. 감사합니다. 다음과 같이 콜15개와 풋 15개가 전략차트 내에 들어가 있습니다. 이중에서 콜 각각의 종목에 가장 가까운 풋(번호)을 찾고자 합니다. 콜행사 콜지수 ----- ----- 277.5 0.03 275.0 0.04 272.5 0.07 270.0 0.15 267.5 0.32 265.0 0.63 262.5 1.18 260.0 2.04 257.5 3.24 255.0 4.77 252.5 6.63 250.0 8.63 247.5 10.8 245.0 12.55 242.5 14.75 풋행사 풋지수 ----- ----- 267.5 10.5 265.0 8.06 262.5 6.24 260.0 4.6 257.5 3.29 255.0 2.34 252.5 1.62 250.0 1.13 247.5 0.78 245.0 0.55 242.5 0.4 240.0 0.29 237.5 0.22 235.0 0.18 232.5 0.14 위는 지난부말 콜과 풋의 지수 값입니다. 이를 아래와 같이 배열에 대입시키고 콜지수가 5.00 이하이면서(상한) 콜지수가 0.20(하한) 이상인 경우(범위 지정) 콜 각각의 종목에 가장 근사한 풋의 번호를 구하는 것입니다. 예를 들면 콜 277.5와 가장 근사한 풋의 번호는 15번(풋232.5)이지만 지수가 0.20 미만이므로 0을 돌려주고 다른 예로 콜262.5(7번, 지수는 1.18)의 근사치 풋은 풋250 이고(지수는 1.13) 해당 풋번호 8번을 돌려 주게 하고자 합니다. array : 콜현[15](0, data1), 풋현[15](0, data1), 콜근사풋번호[15](0, data1); //콜현_______________ 콜현[1] = data7(C); 콜현[2] = data8(C); 콜현[3] = data9(C); 콜현[4] = data10(C); 콜현[5] = data11(C); 콜현[6] = data12(C); 콜현[7] = data13(C); 콜현[8] = data14(C); 콜현[9] = data15(C); 콜현[10] =data16(C); 콜현[11] =data17(C); 콜현[12] =data18(C); 콜현[13] =data19(C); 콜현[14] =data20(C); 콜현[15] =data21(C); //풋현_______________ 풋현[1] = data22(C); 풋현[2] = data23(C); 풋현[3] = data24(C); 풋현[4] = data25(C); 풋현[5] = data26(C); 풋현[6] = data27(C); 풋현[7] = data28(C); 풋현[8] = data29(C); 풋현[9] = data30(C); 풋현[10] =data31(C); 풋현[11] =data32(C); 풋현[12] =data33(C); 풋현[13] =data34(C); 풋현[14] =data35(C); 풋현[15] =data36(C); 예시 : plot1(콜근사풋번호[7], "콜근사풋번호[7]"); <==== 출력값은 8 ☞콜 7번에 가장 근사한 풋의 번호는 8 이라는 의미 plot2(풋현[콜근사풋번호[7]], "콜근사풋번호7의 풋의 지수"); <==== 출력값은 1.13 밤새 씨름하다 해결책을 찾지 못하여 이렇게 부탁을 드립니다. 미리 감사드립니다.
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2016-09-12 16:09:44

안녕하세요 예스스탁입니다. var : cnt1(0),cnt2(0),diff(0); Array : 콜현[15](0, data1), 풋현[15](0, data1); Array : 콜근사풋번호[15](0, data1); 콜현[1] = data7(C); 콜현[2] = data8(C); 콜현[3] = data9(C); 콜현[4] = data10(C); 콜현[5] = data11(C); 콜현[6] = data12(C); 콜현[7] = data13(C); 콜현[8] = data14(C); 콜현[9] = data15(C); 콜현[10] =data16(C); 콜현[11] =data17(C); 콜현[12] =data18(C); 콜현[13] =data19(C); 콜현[14] =data20(C); 콜현[15] =data21(C); //풋현_______________ 풋현[1] = data22(C); 풋현[2] = data23(C); 풋현[3] = data24(C); 풋현[4] = data25(C); 풋현[5] = data26(C); 풋현[6] = data27(C); 풋현[7] = data28(C); 풋현[8] = data29(C); 풋현[9] = data30(C); 풋현[10] =data31(C); 풋현[11] =data32(C); 풋현[12] =data33(C); 풋현[13] =data34(C); 풋현[14] =data35(C); 풋현[15] =data36(C); for cnt1 = 1 to 15{//콜 갯수 콜근사풋번호[cnt1] = 0; //초기값을 0 diff = 9999999999; //가격차가 가장 적은 값을 찾기때문에 초기값은 큰값 for cnt2 = 1 to 15{ //풋갯수 if abs(콜현[cnt1]-풋현[cnt2]) < diff Then{ diff = abs(콜현[cnt1]-풋현[cnt2]); 콜근사풋번호[cnt1] = cnt2; } } } plot2(풋현[콜근사풋번호[7]], "콜근사풋번호7의 풋의 지수"); 즐거운 하루되세요 > 스퍼트시커 님이 쓴 글입니다. > 제목 : 근사치 상대 종목 찾기 > 항상 신속하고 상세하게 답변 주셔서 많은 도움을 받고 있습니다. 감사합니다. 다음과 같이 콜15개와 풋 15개가 전략차트 내에 들어가 있습니다. 이중에서 콜 각각의 종목에 가장 가까운 풋(번호)을 찾고자 합니다. 콜행사 콜지수 ----- ----- 277.5 0.03 275.0 0.04 272.5 0.07 270.0 0.15 267.5 0.32 265.0 0.63 262.5 1.18 260.0 2.04 257.5 3.24 255.0 4.77 252.5 6.63 250.0 8.63 247.5 10.8 245.0 12.55 242.5 14.75 풋행사 풋지수 ----- ----- 267.5 10.5 265.0 8.06 262.5 6.24 260.0 4.6 257.5 3.29 255.0 2.34 252.5 1.62 250.0 1.13 247.5 0.78 245.0 0.55 242.5 0.4 240.0 0.29 237.5 0.22 235.0 0.18 232.5 0.14 위는 지난부말 콜과 풋의 지수 값입니다. 이를 아래와 같이 배열에 대입시키고 콜지수가 5.00 이하이면서(상한) 콜지수가 0.20(하한) 이상인 경우(범위 지정) 콜 각각의 종목에 가장 근사한 풋의 번호를 구하는 것입니다. 예를 들면 콜 277.5와 가장 근사한 풋의 번호는 15번(풋232.5)이지만 지수가 0.20 미만이므로 0을 돌려주고 다른 예로 콜262.5(7번, 지수는 1.18)의 근사치 풋은 풋250 이고(지수는 1.13) 해당 풋번호 8번을 돌려 주게 하고자 합니다. array : 콜현[15](0, data1), 풋현[15](0, data1), 콜근사풋번호[15](0, data1); //콜현_______________ 콜현[1] = data7(C); 콜현[2] = data8(C); 콜현[3] = data9(C); 콜현[4] = data10(C); 콜현[5] = data11(C); 콜현[6] = data12(C); 콜현[7] = data13(C); 콜현[8] = data14(C); 콜현[9] = data15(C); 콜현[10] =data16(C); 콜현[11] =data17(C); 콜현[12] =data18(C); 콜현[13] =data19(C); 콜현[14] =data20(C); 콜현[15] =data21(C); //풋현_______________ 풋현[1] = data22(C); 풋현[2] = data23(C); 풋현[3] = data24(C); 풋현[4] = data25(C); 풋현[5] = data26(C); 풋현[6] = data27(C); 풋현[7] = data28(C); 풋현[8] = data29(C); 풋현[9] = data30(C); 풋현[10] =data31(C); 풋현[11] =data32(C); 풋현[12] =data33(C); 풋현[13] =data34(C); 풋현[14] =data35(C); 풋현[15] =data36(C); 예시 : plot1(콜근사풋번호[7], "콜근사풋번호[7]"); <==== 출력값은 8 ☞콜 7번에 가장 근사한 풋의 번호는 8 이라는 의미 plot2(풋현[콜근사풋번호[7]], "콜근사풋번호7의 풋의 지수"); <==== 출력값은 1.13 밤새 씨름하다 해결책을 찾지 못하여 이렇게 부탁을 드립니다. 미리 감사드립니다.