커뮤니티

지표식 문의

프로필 이미지
에구머니
2012-02-24 15:06:48
393
글번호 48167
답변완료
늘 감사합니다.
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2012-02-27 14:46:57

안녕하세요 예스스탁입니다. 1. #data1 ksp200종합 #data2~data6 콜(아래 행사가 부터) #data7~data11 풋(아래 행사가 부터) #데이터가 여러개이므로 변수는 data1기준으로 저장 input : AA(260),BB(270); array :CC[20](0,data1),PP[20](0,data1),Exercise[20](0,data1); var : E1(0,data1),E2(0,data1),Eq(0,data1),cnt(0,data1),number(0,data1); var : EqCall(0,data1),EqPut(0,data1),num(0,data1); #Kospi200종합지수로 등가계산 E1 = data1(int(C/10)*10); E2 = data1(FracPortion(C/10)*10); if E2 < 1.25 then Eq = E1; if E2 >= 1.25 and E2 < 3.75 then Eq = E1+2.5; if E2 >= 3.75 and E2 < 8.75 then Eq = E1+5.0; if E2 >= 8.75 then Eq = E1+7.5; #행사가 Exercise[0] = AA+(0*2.5); Exercise[1] = AA+(1*2.5); Exercise[2] = AA+(2*2.5); Exercise[3] = AA+(3*2.5); Exercise[4] = AA+(4*2.5); #콜 가격 CC[0] = data2(c); CC[1] = data3(c); CC[2] = data4(c); CC[3] = data5(c); CC[4] = data6(c); #풋 가격 PP[0] = data7(c); PP[1] = data8(c); PP[2] = data9(c); PP[3] = data10(c); PP[4] = data11(c); number = 0; for cnt = 0 to 4 { if Eq == Exercise[cnt] Then number = cnt; } if number != number[1] Then num = Num+1; #등가콜 EqCall = CC[number]; #등가풋 EqPut = PP[number]; plot1(EqCall+EqPut,"등가양합",iff(num%2 == 01,red,blue)); 아래는 2번에 대한 지표식입니다. 장시간 작성해 보았지만 2.3번은 정확히 잘 수식으로 구상이 되지 않습니다. 도움을 드리지 못해 죄송합니다. #data1 ksp200종합 #data2~data6 콜(아래 행사가 부터) #data7~data11 풋(아래 행사가 부터) #데이터가 여러개이므로 변수는 data1기준으로 저장 input : AA(260),BB(270),Apoint(0.2); var : Cnt(0,data1),cond1(false,data1),cond2(false,data1); var : Centry(0,data1),PEntry(0,data1); var : CMax1(0,data1),CMaxi1(0,data1),CMax2(0,data1),CMaxi2(0,data1); var : PMax1(0,data1),PMaxi1(0,data1),PMax2(0,data1),PMaxi2(0,data1); array :CC[20](0,data1),PP[20](0,data1),CCC[20](0,data1),PPP[20](0,data1);; if data1(date != date[1]) Then{ cond1 = false; cond2 = true; } #콜 가격 CC[0] = data2(c); CC[1] = data3(c); CC[2] = data4(c); CC[3] = data5(c); CC[4] = data6(c); #풋 가격 PP[0] = data7(c); PP[1] = data8(c); PP[2] = data9(c); PP[3] = data10(c); PP[4] = data11(c); if cond1 == false Then{ #2.0이하의 콜과 풋 중 최대값 선정 #2.0 넘어가는 종목은 0 처리 for cnt = 0 to 4 { if CC[cnt] <= 2 Then CCC[cnt] = CC[cnt]; Else CCC[cnt] = 0; if PP[cnt] <= 2 Then PPP[cnt] = PP[cnt]; Else PPP[cnt] = 0; MessageLog("%.15f",PP[cnt]); } #콜 2.0이하 최대종목 Cmax1 = NthMaxList(1,CCC[0],CCC[1],CCC[2],CCC[3],CCC[4]); #콜 2.0이하 두번째 큰종목 Cmax2 = NthMaxList(2,CCC[0],CCC[1],CCC[2],CCC[3],CCC[4]); #풋 2.0이하 최대종목 Pmax1 = NthMaxList(1,PPP[0],PPP[1],PPP[2],PPP[3],PPP[4]); #풋 2.0이하 두번째 큰종목 Pmax2 = NthMaxList(2,PPP[0],PPP[1],PPP[2],PPP[3],PPP[4]); #배열번호 CMaxi1 = -1; CMaxi2 = -1; PMaxi1 = -1; PMaxi2 = -1; for cnt = 0 to 4 { if Cmax1 == CC[cnt] Then CMaxi1 = cnt; if Cmax2 == CC[cnt] Then CMaxi2 = cnt; if Pmax1 == PP[cnt] Then PMaxi1 = cnt; if Pmax2 == PP[cnt] Then PMaxi2 = cnt; } } if Cond1 == false and Cmax1 > 0 and Pmax1 > 0 Then{ cond1 = true; } if Cond1 == true and cond2 == false Then{ plot1((Cmax1-CC[CMaxi1])+(PMax1-PP[Pmaxi1]),"1",RED); if CC[CMaxi1] >= Cmax1+Apoint or PP[Pmaxi1] >= PMax1+Apoint Then{ cond2 = true; Centry = CC[CMaxi2]; Pentry = CC[PMaxi2]; } } if cond1 == true and cond2 == true and cond2[1] == true Then{ plot1((Centry-CC[CMaxi1])+(Pentry-PP[Pmaxi1]),"1",blue); } 즐거운 하루되세요 > 에구머니 님이 쓴 글입니다. > 제목 : 지표식 문의 > 늘 감사합니다.