커뮤니티

지표 의뢰드려요

프로필 이미지
qha71
2019-01-03 11:43:51
344
글번호 124902
답변완료

첨부 이미지

안녕하세요! 수식의뢰를 드립니다! 전일의 고가, 저가, 종가를 가지고 당일 목표가격을 만들고 싶습니다! 당일 장이 시작되면 자동으로 상승과 하락쪽으로 양방향에 저가와 고가의 선들이 생성되고 각각의 선의 이름 (예: 저가1,저가2.....등) 과 가격이 표시되기를 원합니다. ----------------------------------- <당일 주가 하방쪽> A: 전일고가, B:전일저가, C:전일종가 저가1 : (B-A)+C 저가2 : (B-A)+B 저가3 : (B-C)+B 저가4 : (B-C)+C 저가5 : (저가1+저가2+저가3+저가4) / 4 저가6 : 전일저가 - 0.65 <당일 주가 상방쪽> A: 전일저가, B:전일고가, C:전일종가 고가1 : (B-A)+C 고가2 : (B-A)+B 고가3 : (B-C)+B 고가4 : (B-C)+C 고가5 : (고가1+고가2+고가3+고가4) / 4 고가6 : 전일고가 - 0.65 --------------------------------------------------------------------------- 다음은 예스의 수식 입니다! 이 수식을 키움의 수식조건에 맞게 수정을 부탁드립니다! 참고 이미지 보냅니다. input : MaPeriod(20), StdDevPeriod(300); var : ii(0), UpperSum(0),UpperNum(0),LowerSum(0), LowerNum(0); If index >= MAPeriod - 1 then { Var1 = ma(close, MAPeriod); Var2 = close - Var1; If Var2 >= 0 then { Var3 = Var2; //upper Var7 = 0; //lower //0//값 입력 Var4 = Var4 + Var3; //upper의 합 Var5 = Var5 + 1; //nPlus } If Var2 < 0 then { Var7 = Var2; //lower Var3 = 0; //upper //0//값 입력 Var8 = Var8 + Var7; //lower의 합 Var9 = Var9 + 1; //nMinus } If index >= StdDevPeriod - 1 then { If index > StdDevPeriod - 1 then { UpperSum = Var4 - Var4[StdDevPeriod]; UpperNum = Var5 - Var5[StdDevPeriod]; Var6 = UpperSum / UpperNum; //upperMean } Else Var6 = Var4 / Var5; //upperMean Var11 = 0; For ii = index - StdDevPeriod + 1 To index { If Var3[ii] <> 0 then { Var11 = Var11 + (Var6 - Var3[ii]) ^ 2; } } If index == StdDevPeriod - 1 then Var11 = sqrt(Var11 / Var5); //upperstd Else Var11 = sqrt(Var11 / UpperNum); //upperstd plot1( Var1 + Var6 + (2 * Var11),"upperLine", red); If index > StdDevPeriod - 1 then { LowerSum = Var8 - Var8[StdDevPeriod]; LowerNum = Var9 - Var9[StdDevPeriod]; Var10 = LowerSum / LowerNum; //lowerMean } Else Var10 = Var8 / Var9; //lowerMean Var12 = 0; For ii = index - StdDevPeriod + 1 To index { If Var7[ii] <> 0 then { Var12 = Var12 + (Var10 - Var7[ii]) ^ 2; } } If index == StdDevPeriod - 1 then Var12 = sqrt(Var12 / Var9); //upperstd Else Var12 = sqrt(Var12 / LowerNum); //upperstd plot2( Var1 + Var10 - (2 * Var12),"lowerLine", blue); plot3( Var1,"MA", BLACK); } } 키움 ------------------------------- 수식1> 수식이름 : 상2 A=MA(가격,이평기간,이평방법); E=A+AvgIf(가격-A, 1, 0.0) +2*StdevIf(가격-A, 1, 0.0); E+(E-A)*R 수식2> 수식이름 : 상1 A=MA(가격,이평기간,이평방법); A+AvgIf(가격-A, 1, 0.0) +2*StdevIf(가격-A, 1, 0.0); E+(E-A)*R 수식3> 수식이름 : 중심 MA(가격,이평기간,이평방법) 수식4> 수식이름 : 하1 A=MA(가격,이평기간,이평방법); A+AvgIf(가격-A, -1, 0.0) -2*StdevIf(가격-A, -1, 0.0) 수식5> 수식이름 : 하2 A=MA(가격,이평기간,이평방법); D=A+AvgIf(가격-A, -1, 0.0) -2*StdevIf(가격-A, -1, 0.0); D-(A-D)*R 지표설정조건> 가격: 시가 / 이평기간: 250 / 이평방법: 지수 / R: 0,236 ---------------------------------------------------------------------- 시스템 > 지표변수> 가격: 시가 / 이평기간: 240 / 이평방법: 지수 매수진입> A=MA(가격,이평기간,이평방법); B=A+AvgIf(가격-A, 1, 0.0) +2*StdevIf(가격-A, 1, 0.0); D=A+AvgIf(가격-A, -1, 0.0) -2*StdevIf(가격-A, -1, 0.0); Crossup(C,D)or CrossDown(C,D) or Crossup(C,B)or CrossDown(C,B) or C == D 매수청산> A=MA(가격,이평기간,이평방법); B=A+AvgIf(가격-A, 1, 0.0) +2*StdevIf(가격-A, 1, 0.0); D=A+AvgIf(가격-A, -1, 0.0) -2*StdevIf(가격-A, -1, 0.0); Crossup(C,D)or CrossDown(C,D) or Crossup(C,B)or CrossDown(C,B) or C == B 매도진입> A=MA(가격,이평기간,이평방법); B=A+AvgIf(가격-A, 1, 0.0) +2*StdevIf(가격-A, 1, 0.0); D=A+AvgIf(가격-A, -1, 0.0) -2*StdevIf(가격-A, -1, 0.0); Crossup(C,D)or CrossDown(C,D) or Crossup(C,B)or CrossDown(C,B) or C == B 매도청산> A=MA(가격,이평기간,이평방법); B=A+AvgIf(가격-A, 1, 0.0) +2*StdevIf(가격-A, 1, 0.0); D=A+AvgIf(가격-A, -1, 0.0) -2*StdevIf(가격-A, -1, 0.0); Crossup(C,D)or CrossDown(C,D) or Crossup(C,B)or CrossDown(C,B) or C == B
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2019-01-03 14:50:53

안녕하세요 예스스탁입니다. 1 var : 저가1(0),저가2(0),저가3(0),저가4(0),저가5(0),저가6(0); var : 고가1(0),고가2(0),고가3(0),고가4(0),고가5(0),고가6(0); 저가1 = (daylow(1)-DayHigh(1))+DayClose(1); 저가2 = (daylow(1)-DayHigh(1))+DayLow(1); 저가3 = (daylow(1)-DayClose(1))+DayLow(1); 저가4 = (daylow(1)-DayClose(1))+DayClose(1); 저가5 = (저가1+저가2+저가3+저가4)/4; 저가6 = DayLow(1)-0.65; 고가1 = (DayHigh(1)-DayLow(1))+DayClose(1); 고가2 = (DayHigh(1)-DayLow(1))+DayHigh(1); 고가3 = (DayHigh(1)-DayClose(1))+DayHigh(1); 고가4 = (DayHigh(1)-DayClose(1))+DayClose(1); 고가5 = (고가1+고가2+고가3+고가4)/4; 고가6 = DayHigh(1)+0.65; plot1(저가1); plot2(저가2); plot3(저가3); plot4(저가4); plot5(저가5); plot6(저가6); plot7(고가1); plot8(고가2); plot9(고가3); plot10(고가4); plot11(고가5); plot12(고가6); Text_Delete(var1); var1 = Text_New(sdate,stime,저가1,"저가1"+NumToStr(저가1,2)); Text_Delete(var2); var2 = Text_New(sdate,stime,저가2,"저가2"+NumToStr(저가2,2)); Text_Delete(var3); var3 = Text_New(sdate,stime,저가3,"저가3"+NumToStr(저가3,2)); Text_Delete(var4); var4 = Text_New(sdate,stime,저가4,"저가4"+NumToStr(저가4,2)); Text_Delete(var5); var5 = Text_New(sdate,stime,저가5,"저가5"+NumToStr(저가5,2)); Text_Delete(var6); var6 = Text_New(sdate,stime,저가6,"저가6"+NumToStr(저가6,2)); Text_Delete(var7); var7 = Text_New(sdate,stime,고가1,"고가1"+NumToStr(고가1,2)); Text_Delete(var8); var8 = Text_New(sdate,stime,고가2,"고가2"+NumToStr(고가2,2)); Text_Delete(var9); var9 = Text_New(sdate,stime,고가3,"고가3"+NumToStr(고가3,2)); Text_Delete(var10); var10 = Text_New(sdate,stime,고가4,"고가4"+NumToStr(고가4,2)); Text_Delete(var11); var11 = Text_New(sdate,stime,고가5,"고가5"+NumToStr(고가5,2)); Text_Delete(var12); var12 = Text_New(sdate,stime,고가6,"고가6"+NumToStr(고가6,2)); 2 타사 프로그램의 랭귀지로는 작성해 드리지 않습니다. 3,4 올려주신 키움수식은 예스랭귀지로 변경해 드릴수 없습니다. 수식에 사용된 avgif와 StdevIf함수에 대해 살펴보았지만 해당 함수가 내부구현으로 되어 있어 어떤 값을 계산하는 함수인지 알수가 없어 수식을 변경해 드릴수 없습니다. 즐거운 하루되세요 > qha71 님이 쓴 글입니다. > 제목 : 지표 의뢰드려요 > 안녕하세요! 수식의뢰를 드립니다! 전일의 고가, 저가, 종가를 가지고 당일 목표가격을 만들고 싶습니다! 당일 장이 시작되면 자동으로 상승과 하락쪽으로 양방향에 저가와 고가의 선들이 생성되고 각각의 선의 이름 (예: 저가1,저가2.....등) 과 가격이 표시되기를 원합니다. ----------------------------------- <당일 주가 하방쪽> A: 전일고가, B:전일저가, C:전일종가 저가1 : (B-A)+C 저가2 : (B-A)+B 저가3 : (B-C)+B 저가4 : (B-C)+C 저가5 : (저가1+저가2+저가3+저가4) / 4 저가6 : 전일저가 - 0.65 <당일 주가 상방쪽> A: 전일저가, B:전일고가, C:전일종가 고가1 : (B-A)+C 고가2 : (B-A)+B 고가3 : (B-C)+B 고가4 : (B-C)+C 고가5 : (고가1+고가2+고가3+고가4) / 4 고가6 : 전일고가 - 0.65 --------------------------------------------------------------------------- 다음은 예스의 수식 입니다! 이 수식을 키움의 수식조건에 맞게 수정을 부탁드립니다! 참고 이미지 보냅니다. input : MaPeriod(20), StdDevPeriod(300); var : ii(0), UpperSum(0),UpperNum(0),LowerSum(0), LowerNum(0); If index >= MAPeriod - 1 then { Var1 = ma(close, MAPeriod); Var2 = close - Var1; If Var2 >= 0 then { Var3 = Var2; //upper Var7 = 0; //lower //0//값 입력 Var4 = Var4 + Var3; //upper의 합 Var5 = Var5 + 1; //nPlus } If Var2 < 0 then { Var7 = Var2; //lower Var3 = 0; //upper //0//값 입력 Var8 = Var8 + Var7; //lower의 합 Var9 = Var9 + 1; //nMinus } If index >= StdDevPeriod - 1 then { If index > StdDevPeriod - 1 then { UpperSum = Var4 - Var4[StdDevPeriod]; UpperNum = Var5 - Var5[StdDevPeriod]; Var6 = UpperSum / UpperNum; //upperMean } Else Var6 = Var4 / Var5; //upperMean Var11 = 0; For ii = index - StdDevPeriod + 1 To index { If Var3[ii] <> 0 then { Var11 = Var11 + (Var6 - Var3[ii]) ^ 2; } } If index == StdDevPeriod - 1 then Var11 = sqrt(Var11 / Var5); //upperstd Else Var11 = sqrt(Var11 / UpperNum); //upperstd plot1( Var1 + Var6 + (2 * Var11),"upperLine", red); If index > StdDevPeriod - 1 then { LowerSum = Var8 - Var8[StdDevPeriod]; LowerNum = Var9 - Var9[StdDevPeriod]; Var10 = LowerSum / LowerNum; //lowerMean } Else Var10 = Var8 / Var9; //lowerMean Var12 = 0; For ii = index - StdDevPeriod + 1 To index { If Var7[ii] <> 0 then { Var12 = Var12 + (Var10 - Var7[ii]) ^ 2; } } If index == StdDevPeriod - 1 then Var12 = sqrt(Var12 / Var9); //upperstd Else Var12 = sqrt(Var12 / LowerNum); //upperstd plot2( Var1 + Var10 - (2 * Var12),"lowerLine", blue); plot3( Var1,"MA", BLACK); } } 키움 ------------------------------- 수식1> 수식이름 : 상2 A=MA(가격,이평기간,이평방법); E=A+AvgIf(가격-A, 1, 0.0) +2*StdevIf(가격-A, 1, 0.0); E+(E-A)*R 수식2> 수식이름 : 상1 A=MA(가격,이평기간,이평방법); A+AvgIf(가격-A, 1, 0.0) +2*StdevIf(가격-A, 1, 0.0); E+(E-A)*R 수식3> 수식이름 : 중심 MA(가격,이평기간,이평방법) 수식4> 수식이름 : 하1 A=MA(가격,이평기간,이평방법); A+AvgIf(가격-A, -1, 0.0) -2*StdevIf(가격-A, -1, 0.0) 수식5> 수식이름 : 하2 A=MA(가격,이평기간,이평방법); D=A+AvgIf(가격-A, -1, 0.0) -2*StdevIf(가격-A, -1, 0.0); D-(A-D)*R 지표설정조건> 가격: 시가 / 이평기간: 250 / 이평방법: 지수 / R: 0,236 ---------------------------------------------------------------------- 시스템 > 지표변수> 가격: 시가 / 이평기간: 240 / 이평방법: 지수 매수진입> A=MA(가격,이평기간,이평방법); B=A+AvgIf(가격-A, 1, 0.0) +2*StdevIf(가격-A, 1, 0.0); D=A+AvgIf(가격-A, -1, 0.0) -2*StdevIf(가격-A, -1, 0.0); Crossup(C,D)or CrossDown(C,D) or Crossup(C,B)or CrossDown(C,B) or C == D 매수청산> A=MA(가격,이평기간,이평방법); B=A+AvgIf(가격-A, 1, 0.0) +2*StdevIf(가격-A, 1, 0.0); D=A+AvgIf(가격-A, -1, 0.0) -2*StdevIf(가격-A, -1, 0.0); Crossup(C,D)or CrossDown(C,D) or Crossup(C,B)or CrossDown(C,B) or C == B 매도진입> A=MA(가격,이평기간,이평방법); B=A+AvgIf(가격-A, 1, 0.0) +2*StdevIf(가격-A, 1, 0.0); D=A+AvgIf(가격-A, -1, 0.0) -2*StdevIf(가격-A, -1, 0.0); Crossup(C,D)or CrossDown(C,D) or Crossup(C,B)or CrossDown(C,B) or C == B 매도청산> A=MA(가격,이평기간,이평방법); B=A+AvgIf(가격-A, 1, 0.0) +2*StdevIf(가격-A, 1, 0.0); D=A+AvgIf(가격-A, -1, 0.0) -2*StdevIf(가격-A, -1, 0.0); Crossup(C,D)or CrossDown(C,D) or Crossup(C,B)or CrossDown(C,B) or C == B