커뮤니티
수식부탁드림니다=================
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)));
다음글
이전글