커뮤니티

문의드립니다.

프로필 이미지
회원
2014-08-12 09:20:10
162
글번호 77611
답변완료
1. input : RSIP(10),Indep(C), Dep(H), Length(20); var : AvgX(0),AvgY(0),SumDySqr(0),SumDxDy(0),SumDxSqr(0),Dy(0),Dx(0),R(0),CoefficientR(0),rsq(0),RSIv(0); CoefficientR = -2 ; if Length > 0 then begin AvgX = 0 ; AvgY = 0 ; for Value1 = 0 to Length - 1 begin AvgX = AvgX + Indep[Value1] ; AvgY = AvgY + Dep[Value1] ; end ; AvgX = AvgX / Length ; AvgY = AvgY / Length ; SumDxSqr = 0 ; SumDySqr = 0 ; SumDxDy = 0 ; for Value1 = 0 to Length - 1 begin Dx = Indep[Value1] - AvgX ; Dy = Dep[Value1] - AvgY ; SumDxSqr = SumDxSqr + Square( Dx ) ; SumDySqr = SumDySqr + Square( Dy ) ; SumDxDy = SumDxDy + Dx * Dy ; end ; Value2 = SumDxSqr * SumDySqr ; if Value2 > 0 then begin R = SumDxDy / SquareRoot( Value2 ) ; if R >= -1 and R <= 1 then CoefficientR = R ; end ; end ; rsq = Square(CoefficientR); RSIv = RSI(RSIP); if RSIv > RSIv[1] AND rsq > rsq[1] Then PLOT1(RSIv,"1",RED); if RSIv < RSIv[1] AND rsq < rsq[1] Then PLOT1(RSIv,"1",blue); plot2(RSIV); ................................................................ 상기 1번식을 데이타2용으로 가공해 주세요 2. trix 지표를 데이타2용으로 가공해 주세요 3. input : Atime(60),StoPeriod(10), StoPeriod1(6), StoPeriod2(6); var : count(0), highVal(0), lowVal(0), StoFastK(0), StoK(0), StoD(0); var : Ep(0), EP1(0), JISU(0), DINDEX(0), PreStoK(0), PreStoD(0),cnt(0); Array : HH[50](0),LL[50](0); var1 = TimeToMinutes(stime)%Atime; if dayindex == 0 or (var1 < var1[1] and stime > stime[1]) Then{ HH[0] = H; LL[0] = L; for cnt = 1 to 49{ HH[cnt] = HH[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; } } if H > HH[0] Then HH[0] = H; if L < LL[0] Then LL[0] = L; highVal = HH[0]; lowVal = LL[0]; for count = 0 to StoPeriod-1 { if HH[count] > highVal then highVal = HH[count]; if LL[count] < lowVal then lowVal = LL[count]; } StoFastK = (C-lowVal)/(highVal-lowVal)*100; #### Slow StochasticsK #### Ep = 2/(StoPeriod1+1); if DINDEX >= StoPeriod and (date != date[1] or var1 < var1[1]) then { DINDEX = DINDEX + 1; PreStoK = StoK[1]; } if DINDEX <= 1 then StoK = StoFastK ; else StoK = StoFastK * EP + PreStoK * (1-EP); #### Slow StochasticsD #### Ep1 = 2/(StoPeriod2+1); if date != date[1] or var1 < var1[1] then { DINDEX = DINDEX + 1; PreStoD = StoD[1]; } if DINDEX <= 1 then StoD = StoK ; else StoD = StoK * EP1 + PreStoD * (1-EP1); plot1(StoK); plot2(StoD); PlotBaseLine1(50); ............................................................... 3번식을 데이타2용으로 바꾸어 주세요..더불어 3번식에서 스톡케이선과 스톡디선 모두 색깔을 넣어 주세요.(스톡케이선이 하락하면 파란색, 스톡케이선이 상승하면 빨간색 이런식으로요.. 마찬가지로 스톡디선이 하락하면 파란색, 스톡디선이 상승하면 빨간색) 감사합니다
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2014-08-12 14:16:35

안녕하세요 예스스탁입니다. 1. 참조데이터의 값으로 지정이 되어야 하므로 외부변수 지정하던 Indep(C), Dep(H)는 내부변수로 되어야 합니다. input : RSIP(10),Length(20); var : AvgX(0,data2),AvgY(0,data2),SumDySqr(0,data2),SumDxDy(0,data2),SumDxSqr(0,data2); var : ,Dy(0,data2),Dx(0,data2),R(0,data2),CoefficientR(0,data2),rsq(0,data2),RSIv(0,data2); var : val1(0,data2),val2(0,data2); var : indep(0,data2),Dep(0,data2); CoefficientR = -2 ; indep = data2(c); Dep = data2(H); if Length > 0 then begin AvgX = 0 ; AvgY = 0 ; for Val1 = 0 to Length - 1 begin AvgX = AvgX + Indep[Val1] ; AvgY = AvgY + Dep[Val1] ; end ; AvgX = AvgX / Length ; AvgY = AvgY / Length ; SumDxSqr = 0 ; SumDySqr = 0 ; SumDxDy = 0 ; for Val1 = 0 to Length - 1 begin Dx = Indep[Val1] - AvgX ; Dy = Dep[Val1] - AvgY ; SumDxSqr = SumDxSqr + data2(Square( Dx )) ; SumDySqr = SumDySqr + data2(Square( Dy )) ; SumDxDy = SumDxDy + Dx * Dy ; end ; Val2 = SumDxSqr * SumDySqr ; if Val2 > 0 then begin R = SumDxDy / data2(SquareRoot( Val2 )) ; if R >= -1 and R <= 1 then CoefficientR = R ; end ; end ; rsq = data2(Square(CoefficientR)); RSIv = data2(RSI(RSIP)); if RSIv > RSIv[1] AND rsq > rsq[1] Then PLOT1(RSIv,"1",RED); if RSIv < RSIv[1] AND rsq < rsq[1] Then PLOT1(RSIv,"1",blue); plot2(RSIV); 2. Input : Period(12), sigPeriod(9); var : TRIXv(0,data2),TRIXsig(0,data2); TRIXv = data2(TRIX(Period)); TRIXsig = data2(ema(TRIX(Period),sigPeriod)); Plot1(TRIXv,"TRIX"); Plot2(TRIXsig,"TRIX시그널"); PlotBaseLine1(0,"기준선"); 3. input : Atime(60),StoPeriod(10), StoPeriod1(6), StoPeriod2(6); var : count(0,data2), highVal(0,data2), lowVal(0,data2), StoFastK(0,data2), StoK(0,data2), StoD(0,data2); var : Ep(0,data2), EP1(0,data2), JISU(0,data2), DINDEX(0,data2), PreStoK(0,data2), PreStoD(0,data2),cnt(0,data2); var : TF(0,data2); Array : HH[50](0,data2),LL[50](0,data2); TF = data2(TimeToMinutes(stime)%Atime); if data2(dayindex == 0 or (TF < TF[1] and stime > stime[1])) Then{ HH[0] = data2(H); LL[0] = data2(L); for cnt = 1 to 49{ HH[cnt] = HH[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; } } if data2(H) > HH[0] Then HH[0] = data2(H); if data2(L) < LL[0] Then LL[0] = data2(L); highVal = HH[0]; lowVal = LL[0]; for count = 0 to StoPeriod-1 { if HH[count] > highVal then highVal = HH[count]; if LL[count] < lowVal then lowVal = LL[count]; } StoFastK = (data2(C)-lowVal)/(highVal-lowVal)*100; #### Slow StochasticsK #### Ep = 2/(StoPeriod1+1); if data2(DINDEX >= StoPeriod and (date != date[1] or TF < TF[1])) then { DINDEX = DINDEX + 1; PreStoK = StoK[1]; } if DINDEX <= 1 then StoK = StoFastK ; else StoK = StoFastK * EP + PreStoK * (1-EP); #### Slow StochasticsD #### Ep1 = 2/(StoPeriod2+1); if data2(date != date[1] or TF < TF[1]) then { DINDEX = DINDEX + 1; PreStoD = StoD[1]; } if DINDEX <= 1 then StoD = StoK ; else StoD = StoK * EP1 + PreStoD * (1-EP1); if stok > stok[1] then plot1(StoK,"k",red); else plot1(StoK,"k",blue); if stod > stod[1] then plot2(StoD,"d",red); else plot2(StoD,"d",blue); PlotBaseLine1(50); 즐거운 하루되세요 > alsk 님이 쓴 글입니다. > 제목 : 문의드립니다. > 1. input : RSIP(10),Indep(C), Dep(H), Length(20); var : AvgX(0),AvgY(0),SumDySqr(0),SumDxDy(0),SumDxSqr(0),Dy(0),Dx(0),R(0),CoefficientR(0),rsq(0),RSIv(0); CoefficientR = -2 ; if Length > 0 then begin AvgX = 0 ; AvgY = 0 ; for Value1 = 0 to Length - 1 begin AvgX = AvgX + Indep[Value1] ; AvgY = AvgY + Dep[Value1] ; end ; AvgX = AvgX / Length ; AvgY = AvgY / Length ; SumDxSqr = 0 ; SumDySqr = 0 ; SumDxDy = 0 ; for Value1 = 0 to Length - 1 begin Dx = Indep[Value1] - AvgX ; Dy = Dep[Value1] - AvgY ; SumDxSqr = SumDxSqr + Square( Dx ) ; SumDySqr = SumDySqr + Square( Dy ) ; SumDxDy = SumDxDy + Dx * Dy ; end ; Value2 = SumDxSqr * SumDySqr ; if Value2 > 0 then begin R = SumDxDy / SquareRoot( Value2 ) ; if R >= -1 and R <= 1 then CoefficientR = R ; end ; end ; rsq = Square(CoefficientR); RSIv = RSI(RSIP); if RSIv > RSIv[1] AND rsq > rsq[1] Then PLOT1(RSIv,"1",RED); if RSIv < RSIv[1] AND rsq < rsq[1] Then PLOT1(RSIv,"1",blue); plot2(RSIV); ................................................................ 상기 1번식을 데이타2용으로 가공해 주세요 2. trix 지표를 데이타2용으로 가공해 주세요 3. input : Atime(60),StoPeriod(10), StoPeriod1(6), StoPeriod2(6); var : count(0), highVal(0), lowVal(0), StoFastK(0), StoK(0), StoD(0); var : Ep(0), EP1(0), JISU(0), DINDEX(0), PreStoK(0), PreStoD(0),cnt(0); Array : HH[50](0),LL[50](0); var1 = TimeToMinutes(stime)%Atime; if dayindex == 0 or (var1 < var1[1] and stime > stime[1]) Then{ HH[0] = H; LL[0] = L; for cnt = 1 to 49{ HH[cnt] = HH[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; } } if H > HH[0] Then HH[0] = H; if L < LL[0] Then LL[0] = L; highVal = HH[0]; lowVal = LL[0]; for count = 0 to StoPeriod-1 { if HH[count] > highVal then highVal = HH[count]; if LL[count] < lowVal then lowVal = LL[count]; } StoFastK = (C-lowVal)/(highVal-lowVal)*100; #### Slow StochasticsK #### Ep = 2/(StoPeriod1+1); if DINDEX >= StoPeriod and (date != date[1] or var1 < var1[1]) then { DINDEX = DINDEX + 1; PreStoK = StoK[1]; } if DINDEX <= 1 then StoK = StoFastK ; else StoK = StoFastK * EP + PreStoK * (1-EP); #### Slow StochasticsD #### Ep1 = 2/(StoPeriod2+1); if date != date[1] or var1 < var1[1] then { DINDEX = DINDEX + 1; PreStoD = StoD[1]; } if DINDEX <= 1 then StoD = StoK ; else StoD = StoK * EP1 + PreStoD * (1-EP1); plot1(StoK); plot2(StoD); PlotBaseLine1(50); ............................................................... 3번식을 데이타2용으로 바꾸어 주세요..더불어 3번식에서 스톡케이선과 스톡디선 모두 색깔을 넣어 주세요.(스톡케이선이 하락하면 파란색, 스톡케이선이 상승하면 빨간색 이런식으로요.. 마찬가지로 스톡디선이 하락하면 파란색, 스톡디선이 상승하면 빨간색) 감사합니다