커뮤니티

수식부탁드림니다=================

프로필 이미지
leekss1
2017-06-15 05:57:23
205
글번호 110434
답변완료
여러개의 지표를 합쳐보았슴니다 그런데 09:15분 경까지는 전일데이타까지 사용해서 왜곡이 심하네요 당일데이타만 참고하고 싶슴니다 수정좀부탁드립니다 수고스럽게해서 죄송합니다 //***************************macd Input : shortPeriodm(5), longPeriodm(10), Periodm(3),보정(400),등락(0.005); Var : MACDv(0), MACDsig(0),macdosc(0) ; MACDv = MACD(shortPeriodm, longPeriodm); MACDsig = ema(MACDv,Periodm); macdosc = MACDv-ema(MACDv,Periodm); if macdosc > 0 then { // plot1(macdosc+0.4, "MACDOscillator+"); // Plot2(0+0.4, "MACDOscillator-"); } else { // Plot1(0+0.4, "MACDOscillator+"); // Plot2(macdosc+0.4, "MACDOscillator-"); } Plot23(MACDv*보정, "MACD",iff((MACDv )>(MACDv[1])+00,RED,iff((MACDv )<(MACDv[1] )-00,BLUE,BLACK))); Plot21(MACDsig*보정, "MACDSignal",iff((MACDsig )>(MACDsig[1])+00,RED,iff((MACDsig )<(MACDsig[1] )-00,BLUE,BLACK))); //PlotBaseLine1(0, "기준선1"); //******************************sto Input : Periods(5), Periods1(10), Periods2(3); var : StoK(0),StoD(0); StoK = StochasticsK(Periods,Periods1); StoD = StochasticsD(Periods,Periods1,Periods2); //Plot11(StoK, "StochasticsK"); Plot12(StoD-50, "StochasticsD",iff((StoD )>(StoD[1])+00,RED,iff((StoD )<(StoD[1] )-00,BLUE,BLACK))); //PlotBaseLine1(20, "기준선20"); //PlotBaseLine2(80, "기준선80"); //tsf************************************** tsf Input : Periodt1(10),Periodt2(11),순매수급증보정1(0.6),순매수급감보정1(0.6),순매수보정한계1(0.002), 순매수급증보정2(0.9),순매수급감보정2(0.9),순매수보정한계2(0.009); var : TSF1(0); var : TSF11(0); var : TSF보정1(0); var : TSF보정11(0); var : TSF보정111(0); var : TSF2(0); var : TSF22(0); var : TSF보정22(0); var : TSF보정222(0); var : TSF막(0); var : TSF보정12(0); var : TSF(0); var : TSF보정(0); VARS: TEMA1(0),TEMA2(0),TEMA3(0); //Periodt1---------------------------------------------------------------------------------- TSF1 = LRL(C,Periodt1)+LRS(C,Periodt1); Plot41(TSF1,"TSF1",iff(TSF1>TSF1[1]+0.00,RED,iff(TSF1<TSF1[1]-0.000,BLUE,WHITE))); if TSF1 >TSF1[1]+순매수보정한계1 then TSF11 = ((TSF1 -TSF1[1])*순매수급증보정1)+TSF1[1]; if TSF1 <TSF1[1]-순매수보정한계1 then TSF11 = TSF1[1]-((TSF1[1] -TSF1)*순매수급감보정1); if TSF11 >TSF11[1]+0.001 then TSF보정111 = ((TSF11 -TSF11[1])*0.7)+TSF11[1]; if TSF11 <TSF11[1]-0.001 then TSF보정111 = TSF11[1]-((TSF11[1] -TSF11)*0.7); Plot42(TSF보정111,"TSF보정111"/*,iff(TSF보정111>TSF보정111[1]+0.0001,RED,iff(TSF보정111<TSF보정111[1]-0.0001,BLUE,WHITE))*/); //Periodt2---------------------------------------------------------------------------------- TSF2 = LRL(C,Periodt2)+LRS(C,Periodt2); Plot43(TSF2,"TSF2",iff(TSF2>TSF2[1]+0.00,RED,iff(TSF2<TSF2[1]-0.000,BLUE,WHITE))); if TSF2 >TSF2[1]+순매수보정한계2 then TSF22 = ((TSF2 -TSF2[1])*순매수급증보정2)+TSF2[1]; if TSF2 <TSF2[1]-순매수보정한계2 then TSF22 = TSF2[1]-((TSF2[1] -TSF2)*순매수급감보정2); if TSF22 >TSF22[1]+0.009 then TSF보정222 = ((TSF22 -TSF22[1])*0.2)+TSF22[1]; if TSF22 <TSF22[1]-0.009 then TSF보정222 = TSF22[1]-((TSF22[1] -TSF22)*0.2); // if TSF >TSF[1]+50 then TSF보정 = ((TSF -TSF[1])*0.2)+TSF[1]; // if TSF <TSF[1]-50 then TSF보정 = TSF[1]-((TSF[1] -TSF)*0.2); Plot44(TSF보정222,"TSF보정222",iff(TSF보정222>TSF보정222[1]+0.0001,RED,iff(TSF보정222<TSF보정222[1]-0.0001,BLUE,WHITE))); Plot45(TSF보정222,"TSF막",iff(TSF1>TSF1[1]+0.00,RED,iff(TSF1<TSF1[1]-0.000,BLUE,WHITE))); if TSF보정222[2] > TSF보정222[1] and TSF보정222[1] < TSF보정222 Then { Plot46(TSF보정222-0.04, "buy"); // PlaySound("C:₩예스트레이더₩data₩Sound₩alert"); } if TSF보정222[2] < TSF보정222[1] and TSF보정222[1] > TSF보정222 Then { Plot47(TSF보정222+0.04, "sall"); // PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav"); } //****************************신호 if (MACDsig )>(MACDsig[1])+00 and TSF1 > TSF1[1] Then{ PLOT32((MACDsig*보정 )-0.01,"매수막대"); PlaySound("C:₩Users₩Administrator₩Desktop₩sound₩alert.wav"); } if (MACDsig )<(MACDsig[1])+00 and TSF1 < TSF1[1] Then{ PLOT33((MACDsig*보정 )-0.01,"매도막대"); PlaySound("C:₩Users₩Administrator₩Desktop₩sound₩reject.wav"); } Plot4(MACDsig*보정,"tott",iff((MACDsig )>(MACDsig[1])+00 and ( TSF1 > TSF1[1] ) ,RED,iff((MACDsig )<(MACDsig[1])+00 and TSF1 < TSF1[1] ,BLUE,GREEN)));
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2017-06-15 13:34:54

안녕하세요 예스스탁입니다. //***************************macd Input : shortPeriodm(5), longPeriodm(10), Periodm(3),보정(400),등락(0.005); Var : MACDv(0), MACDsig(0),macdosc(0) ; Var : Ep1(0), JISU1(0),Ep2(0), JISU2(0),Ep3(0),Jisu3(0),idx(0); Ep1 = 2/(shortPeriodm+1); Ep2 = 2/(longPeriodm+1); Ep3 = 2/(Periodm+1); if bdate != Bdate[1] Then idx = 0; idx = idx+1; if idx == 1 then { JISU1 = C; JISU2 = C; MACDv = JiSu1-Jisu2; MACDsig = MACDv; macdosc = MACDV-MACDsig; } else{ JISU1 = C * EP1 + JISU1[1] * (1-EP1); JISU2 = C * EP2 + JISU2[1] * (1-EP2); MACDv = JiSu1-Jisu2; MACDsig = MACDv * EP3 + MACDsig[1] * (1-EP3); macdosc = MACDV-MACDsig; } if macdosc > 0 then { // plot1(macdosc+0.4, "MACDOscillator+"); // Plot2(0+0.4, "MACDOscillator-"); } else { // Plot1(0+0.4, "MACDOscillator+"); // Plot2(macdosc+0.4, "MACDOscillator-"); } Plot23(MACDv*보정, "MACD",iff((MACDv )>(MACDv[1])+00,RED,iff((MACDv )<(MACDv[1] )-00,BLUE,BLACK))); Plot21(MACDsig*보정, "MACDSignal",iff((MACDsig )>(MACDsig[1])+00,RED,iff((MACDsig )<(MACDsig[1] )-00,BLUE,BLACK))); //PlotBaseLine1(0, "기준선1"); //******************************sto Input : Periods(5), Periods1(10), Periods2(3); var : StoK(0),StoD(0); Var : HH(0),LL(0),FK(0),sEP1(0),sEP2(0),idx1(0); if Bdate != Bdate[1] Then idx1 = 0; idx1 = idx1+1; if idx1 <= Periods Then{ HH = DayHigh; LL = DayLow; } Else{ HH = highest(H,Periods); LL = lowest(L,Periods); } FK = (Close - LL) / (HH - LL) * 100; sEP1 = 2/(Periods1+1); sEP2 = 2/(Periods2+1); if idx1 == 1 Then{ StoK = FK; StoD = StoK; } Else{ StoK = FK * sEP1 + StoK[1] * (1-sEP1); StoD = StoK * sEP2 + StoD[1] * (1-sEP2); } //Plot11(StoK, "StochasticsK"); Plot12(StoD-50, "StochasticsD",iff((StoD )>(StoD[1])+00,RED,iff((StoD )<(StoD[1] )-00,BLUE,BLACK))); //PlotBaseLine1(20, "기준선20"); //PlotBaseLine2(80, "기준선80"); //tsf************************************** tsf Input : Periodt1(10),Periodt2(11),순매수급증보정1(0.6),순매수급감보정1(0.6),순매수보정한계1(0.002), 순매수급증보정2(0.9),순매수급감보정2(0.9),순매수보정한계2(0.009); var : TSF1(0); var : TSF11(0); var : TSF보정1(0); var : TSF보정11(0); var : TSF보정111(0); var : TSF2(0); var : TSF22(0); var : TSF보정22(0); var : TSF보정222(0); var : TSF막(0); var : TSF보정12(0); var : TSF(0); var : TSF보정(0); VARS: TEMA1(0),TEMA2(0),TEMA3(0); //Periodt1---------------------------------------------------------------------------------- TSF1 = LRL(C,min(Periodt1,idx))+LRS(C,min(Periodt1,idx)); Plot41(TSF1,"TSF1",iff(TSF1>TSF1[1]+0.00,RED,iff(TSF1<TSF1[1]-0.000,BLUE,WHITE))); if TSF1 >TSF1[1]+순매수보정한계1 then TSF11 = ((TSF1 -TSF1[1])*순매수급증보정1)+TSF1[1]; if TSF1 <TSF1[1]-순매수보정한계1 then TSF11 = TSF1[1]-((TSF1[1] -TSF1)*순매수급감보정1); if TSF11 >TSF11[1]+0.001 then TSF보정111 = ((TSF11 -TSF11[1])*0.7)+TSF11[1]; if TSF11 <TSF11[1]-0.001 then TSF보정111 = TSF11[1]-((TSF11[1] -TSF11)*0.7); Plot42(TSF보정111,"TSF보정111"/*,iff(TSF보정111>TSF보정111[1]+0.0001,RED,iff(TSF보정111<TSF보정111[1]-0.0001,BLUE,WHITE))*/); //Periodt2---------------------------------------------------------------------------------- TSF2 = LRL(C,min(Periodt2,idx))+LRS(C,min(Periodt2,idx)); Plot43(TSF2,"TSF2",iff(TSF2>TSF2[1]+0.00,RED,iff(TSF2<TSF2[1]-0.000,BLUE,WHITE))); if TSF2 >TSF2[1]+순매수보정한계2 then TSF22 = ((TSF2 -TSF2[1])*순매수급증보정2)+TSF2[1]; if TSF2 <TSF2[1]-순매수보정한계2 then TSF22 = TSF2[1]-((TSF2[1] -TSF2)*순매수급감보정2); if TSF22 >TSF22[1]+0.009 then TSF보정222 = ((TSF22 -TSF22[1])*0.2)+TSF22[1]; if TSF22 <TSF22[1]-0.009 then TSF보정222 = TSF22[1]-((TSF22[1] -TSF22)*0.2); // if TSF >TSF[1]+50 then TSF보정 = ((TSF -TSF[1])*0.2)+TSF[1]; // if TSF <TSF[1]-50 then TSF보정 = TSF[1]-((TSF[1] -TSF)*0.2); Plot44(TSF보정222,"TSF보정222",iff(TSF보정222>TSF보정222[1]+0.0001,RED,iff(TSF보정222<TSF보정222[1]-0.0001,BLUE,WHITE))); Plot45(TSF보정222,"TSF막",iff(TSF1>TSF1[1]+0.00,RED,iff(TSF1<TSF1[1]-0.000,BLUE,WHITE))); if TSF보정222[2] > TSF보정222[1] and TSF보정222[1] < TSF보정222 Then { Plot46(TSF보정222-0.04, "buy"); // PlaySound("C:₩예스트레이더₩data₩Sound₩alert"); } if TSF보정222[2] < TSF보정222[1] and TSF보정222[1] > TSF보정222 Then { Plot47(TSF보정222+0.04, "sall"); // PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav"); } //****************************신호 if (MACDsig )>(MACDsig[1])+00 and TSF1 > TSF1[1] Then{ PLOT32((MACDsig*보정 )-0.01,"매수막대"); PlaySound("C:₩Users₩Administrator₩Desktop₩sound₩alert.wav"); } if (MACDsig )<(MACDsig[1])+00 and TSF1 < TSF1[1] Then{ PLOT33((MACDsig*보정 )-0.01,"매도막대"); PlaySound("C:₩Users₩Administrator₩Desktop₩sound₩reject.wav"); } Plot4(MACDsig*보정,"tott",iff((MACDsig )>(MACDsig[1])+00 and ( TSF1 > TSF1[1] ) ,RED,iff((MACDsig )<(MACDsig[1])+00 and TSF1 < TSF1[1] ,BLUE,GREEN))); 즐거운 하루되세요 > leekss1 님이 쓴 글입니다. > 제목 : 수식부탁드림니다================= > 여러개의 지표를 합쳐보았슴니다 그런데 09:15분 경까지는 전일데이타까지 사용해서 왜곡이 심하네요 당일데이타만 참고하고 싶슴니다 수정좀부탁드립니다 수고스럽게해서 죄송합니다 //***************************macd Input : shortPeriodm(5), longPeriodm(10), Periodm(3),보정(400),등락(0.005); Var : MACDv(0), MACDsig(0),macdosc(0) ; MACDv = MACD(shortPeriodm, longPeriodm); MACDsig = ema(MACDv,Periodm); macdosc = MACDv-ema(MACDv,Periodm); if macdosc > 0 then { // plot1(macdosc+0.4, "MACDOscillator+"); // Plot2(0+0.4, "MACDOscillator-"); } else { // Plot1(0+0.4, "MACDOscillator+"); // Plot2(macdosc+0.4, "MACDOscillator-"); } Plot23(MACDv*보정, "MACD",iff((MACDv )>(MACDv[1])+00,RED,iff((MACDv )<(MACDv[1] )-00,BLUE,BLACK))); Plot21(MACDsig*보정, "MACDSignal",iff((MACDsig )>(MACDsig[1])+00,RED,iff((MACDsig )<(MACDsig[1] )-00,BLUE,BLACK))); //PlotBaseLine1(0, "기준선1"); //******************************sto Input : Periods(5), Periods1(10), Periods2(3); var : StoK(0),StoD(0); StoK = StochasticsK(Periods,Periods1); StoD = StochasticsD(Periods,Periods1,Periods2); //Plot11(StoK, "StochasticsK"); Plot12(StoD-50, "StochasticsD",iff((StoD )>(StoD[1])+00,RED,iff((StoD )<(StoD[1] )-00,BLUE,BLACK))); //PlotBaseLine1(20, "기준선20"); //PlotBaseLine2(80, "기준선80"); //tsf************************************** tsf Input : Periodt1(10),Periodt2(11),순매수급증보정1(0.6),순매수급감보정1(0.6),순매수보정한계1(0.002), 순매수급증보정2(0.9),순매수급감보정2(0.9),순매수보정한계2(0.009); var : TSF1(0); var : TSF11(0); var : TSF보정1(0); var : TSF보정11(0); var : TSF보정111(0); var : TSF2(0); var : TSF22(0); var : TSF보정22(0); var : TSF보정222(0); var : TSF막(0); var : TSF보정12(0); var : TSF(0); var : TSF보정(0); VARS: TEMA1(0),TEMA2(0),TEMA3(0); //Periodt1---------------------------------------------------------------------------------- TSF1 = LRL(C,Periodt1)+LRS(C,Periodt1); Plot41(TSF1,"TSF1",iff(TSF1>TSF1[1]+0.00,RED,iff(TSF1<TSF1[1]-0.000,BLUE,WHITE))); if TSF1 >TSF1[1]+순매수보정한계1 then TSF11 = ((TSF1 -TSF1[1])*순매수급증보정1)+TSF1[1]; if TSF1 <TSF1[1]-순매수보정한계1 then TSF11 = TSF1[1]-((TSF1[1] -TSF1)*순매수급감보정1); if TSF11 >TSF11[1]+0.001 then TSF보정111 = ((TSF11 -TSF11[1])*0.7)+TSF11[1]; if TSF11 <TSF11[1]-0.001 then TSF보정111 = TSF11[1]-((TSF11[1] -TSF11)*0.7); Plot42(TSF보정111,"TSF보정111"/*,iff(TSF보정111>TSF보정111[1]+0.0001,RED,iff(TSF보정111<TSF보정111[1]-0.0001,BLUE,WHITE))*/); //Periodt2---------------------------------------------------------------------------------- TSF2 = LRL(C,Periodt2)+LRS(C,Periodt2); Plot43(TSF2,"TSF2",iff(TSF2>TSF2[1]+0.00,RED,iff(TSF2<TSF2[1]-0.000,BLUE,WHITE))); if TSF2 >TSF2[1]+순매수보정한계2 then TSF22 = ((TSF2 -TSF2[1])*순매수급증보정2)+TSF2[1]; if TSF2 <TSF2[1]-순매수보정한계2 then TSF22 = TSF2[1]-((TSF2[1] -TSF2)*순매수급감보정2); if TSF22 >TSF22[1]+0.009 then TSF보정222 = ((TSF22 -TSF22[1])*0.2)+TSF22[1]; if TSF22 <TSF22[1]-0.009 then TSF보정222 = TSF22[1]-((TSF22[1] -TSF22)*0.2); // if TSF >TSF[1]+50 then TSF보정 = ((TSF -TSF[1])*0.2)+TSF[1]; // if TSF <TSF[1]-50 then TSF보정 = TSF[1]-((TSF[1] -TSF)*0.2); Plot44(TSF보정222,"TSF보정222",iff(TSF보정222>TSF보정222[1]+0.0001,RED,iff(TSF보정222<TSF보정222[1]-0.0001,BLUE,WHITE))); Plot45(TSF보정222,"TSF막",iff(TSF1>TSF1[1]+0.00,RED,iff(TSF1<TSF1[1]-0.000,BLUE,WHITE))); if TSF보정222[2] > TSF보정222[1] and TSF보정222[1] < TSF보정222 Then { Plot46(TSF보정222-0.04, "buy"); // PlaySound("C:₩예스트레이더₩data₩Sound₩alert"); } if TSF보정222[2] < TSF보정222[1] and TSF보정222[1] > TSF보정222 Then { Plot47(TSF보정222+0.04, "sall"); // PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav"); } //****************************신호 if (MACDsig )>(MACDsig[1])+00 and TSF1 > TSF1[1] Then{ PLOT32((MACDsig*보정 )-0.01,"매수막대"); PlaySound("C:₩Users₩Administrator₩Desktop₩sound₩alert.wav"); } if (MACDsig )<(MACDsig[1])+00 and TSF1 < TSF1[1] Then{ PLOT33((MACDsig*보정 )-0.01,"매도막대"); PlaySound("C:₩Users₩Administrator₩Desktop₩sound₩reject.wav"); } Plot4(MACDsig*보정,"tott",iff((MACDsig )>(MACDsig[1])+00 and ( TSF1 > TSF1[1] ) ,RED,iff((MACDsig )<(MACDsig[1])+00 and TSF1 < TSF1[1] ,BLUE,GREEN)));