커뮤니티

부탁 드립니다.

프로필 이미지
yes
2015-07-04 17:08:01
163
글번호 87989
답변완료
운영자님~! 수식작성 노고에 깊이 감사드립니다. a)양합 MACD Oscillator b)10분봉 차트에서 (유로화 기준) 1)10분봉의 MACD Oscillator 2)60분봉으로계산되는 MACD Oscillator 3)120분봉으로계산되는 MACD Oscillator 4)일봉으로 계산되는 MACD Oscillator 를 10분봉 차트에서 동시에 구현 하고 싶을때의 지표식과 변수값 부탁 드립니다 미리 감사드리오며 경배 올립니다.
지표
답변 3
프로필 이미지

예스스탁 예스스탁 답변

2015-07-06 09:50:20

안녕하세요 예스스탁입니다. input : atime1(60),atime2(120),short(12),long(26),sig(9); var : sum(0,data1),EP1(0,data1),EP2(0,data1),EP3(0,data1); var : TM(0,data1),TF2(0,data1),TF3(0,data1); var : MACDV1(0,data1),MACDS1(0,data1),MACDO1(0,data1); var : idx2(0,data1),ema21(0,data1),ema22(0,data1); var : PreEma21(0,data1),PreEma22(0,data1),PreMACDS2(0,data1); var : MACDV2(0,data1),MACDS2(0,data1),MACDO2(0,data1); var : idx3(0,data1),ema31(0,data1),ema32(0,data1); var : PreEma31(0,data1),PreEma32(0,data1),PreMACDS3(0,data1); var : MACDV3(0,data1),MACDS3(0,data1),MACDO3(0,data1); var : idx4(0,data1),ema41(0,data1),ema42(0,data1); var : PreEma41(0,data1),PreEma42(0,data1),PreMACDS4(0,data1); var : MACDV4(0,data1),MACDS4(0,data1),MACDO4(0,data1); sum = data1(c)+data2(c); Ep1 = 2/(short+1); Ep2 = 2/(long+1); Ep3 = 2/(sig+1); if bdate != Bdate[1] Then{ var1 = stime; idx4 = idx4 + 1; PreEma31 = Ema31[1]; PreEma32 = Ema32[1]; PreMACDS3 = MACDS3[1]; } if date != date[1] Then var2 = TM[1]; if stime >= var1 Then TM = TimeToMinutes(stime)-TimeToMinutes(var1); Else TM = TimeToMinutes(stime)+var2; TF2 = TM%Atime1; TF3 = TM%Atime2; MACDV1 = data1(ema(sum,short)-ema(sum,long)); MACDS1 = data1(ema(MACDV1,sig)); MACDO1 = MACDV1-MACDS1; if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF2 < TF2[1]) Then{ idx2 = idx2 + 1; PreEma21 = Ema21[1]; PreEma22 = Ema22[1]; PreMACDS2 = MACDS2[1]; } if idx2 <= 1 then { Ema21 = sum; Ema22 = sum; MACDV2 = Ema21-Ema22; MACDS2 = MACDv2; MACDO2 = MACDV2-MACDS2; } else{ Ema21 = sum * EP1 + PreEma21 * (1-EP1); Ema22 = sum * EP2 + PreEma22 * (1-EP2); MACDV2 = Ema21-Ema22; MACDS2 = MACDV2 * EP3 + PreMACDS2 * (1-EP3); MACDO2 = MACDV2-MACDS2; } if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF3 < TF3[1]) Then{ idx3 = idx3 + 1; PreEma31 = Ema31[1]; PreEma32 = Ema32[1]; PreMACDS3 = MACDS3[1]; } if idx3 <= 1 then { Ema31 = sum; Ema32 = sum; MACDV3 = Ema31-Ema32; MACDS3 = MACDv3; MACDO3 = MACDV3-MACDS3; } else{ Ema31 = sum * EP1 + PreEma31 * (1-EP1); Ema32 = sum * EP2 + PreEma32 * (1-EP2); MACDV3 = Ema31-Ema32; MACDS3 = MACDV3 * EP3 + PreMACDS3 * (1-EP3); MACDO3 = MACDV3-MACDS3; } if idx4 <= 1 then { Ema41 = sum; Ema42 = sum; MACDV4 = Ema41-Ema42; MACDS4 = MACDv4; MACDO4 = MACDV4-MACDS4; } else{ Ema41 = sum * EP1 + PreEma41 * (1-EP1); Ema42 = sum * EP2 + PreEma42 * (1-EP2); MACDV4 = Ema41-Ema42; MACDS4 = MACDV4 * EP3 + PreMACDS4 * (1-EP3); MACDO4 = MACDV4-MACDS4; } plot1(MACDO1,"기본차트"); plot2(MACDO2,"atime1"); plot3(MACDO3,"atime2"); plot4(MACDO4,"일봉"); PlotBaseLine1(0); 즐거운 하루되세요 > yes 님이 쓴 글입니다. > 제목 : 부탁 드립니다. > 운영자님~! 수식작성 노고에 깊이 감사드립니다. a)양합 MACD Oscillator b)10분봉 차트에서 (유로화 기준) 1)10분봉의 MACD Oscillator 2)60분봉으로계산되는 MACD Oscillator 3)120분봉으로계산되는 MACD Oscillator 4)일봉으로 계산되는 MACD Oscillator 를 10분봉 차트에서 동시에 구현 하고 싶을때의 지표식과 변수값 부탁 드립니다 미리 감사드리오며 경배 올립니다.
프로필 이미지

yes

2015-07-06 11:52:48

운영자님~~! 수십년전 투자를 시작한 때부터 지금까지 풀지 못했던 차트와 지표의 생성원리를 운영자님을 통해 최근에 서서히 풀려져 가는 느낌 입니다. 무어라 감사드려야 할지 말로 표현할수 없어 적당한 말을 기억해보니 이런말이 저의 마음을 대신하는 듯 합니다. 운영자님~~! 노고에 "감읍" 할따름 입니다. 엉키고 설킨 실타래를 수식으로 풀어 가는 듯 머지 않은 장래에 언젠가는 모두 풀것이라 생각 합니다. 언젠가는 연락 드릴 기회도 있을 것이라 확신 합니다. "감사 드리옵고 경배 올립니다." 아울러 아래 수식을 작성 해 주셨는데 대만족 이상의 수식 입니다. 추가로 아래 수식을 양합이 아닌 단합으로도 변경 부탁 드리고자 합니다. > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 부탁 드립니다. > 안녕하세요 예스스탁입니다. input : atime1(60),atime2(120),short(12),long(26),sig(9); var : sum(0,data1),EP1(0,data1),EP2(0,data1),EP3(0,data1); var : TM(0,data1),TF2(0,data1),TF3(0,data1); var : MACDV1(0,data1),MACDS1(0,data1),MACDO1(0,data1); var : idx2(0,data1),ema21(0,data1),ema22(0,data1); var : PreEma21(0,data1),PreEma22(0,data1),PreMACDS2(0,data1); var : MACDV2(0,data1),MACDS2(0,data1),MACDO2(0,data1); var : idx3(0,data1),ema31(0,data1),ema32(0,data1); var : PreEma31(0,data1),PreEma32(0,data1),PreMACDS3(0,data1); var : MACDV3(0,data1),MACDS3(0,data1),MACDO3(0,data1); var : idx4(0,data1),ema41(0,data1),ema42(0,data1); var : PreEma41(0,data1),PreEma42(0,data1),PreMACDS4(0,data1); var : MACDV4(0,data1),MACDS4(0,data1),MACDO4(0,data1); sum = data1(c)+data2(c); Ep1 = 2/(short+1); Ep2 = 2/(long+1); Ep3 = 2/(sig+1); if bdate != Bdate[1] Then{ var1 = stime; idx4 = idx4 + 1; PreEma31 = Ema31[1]; PreEma32 = Ema32[1]; PreMACDS3 = MACDS3[1]; } if date != date[1] Then var2 = TM[1]; if stime >= var1 Then TM = TimeToMinutes(stime)-TimeToMinutes(var1); Else TM = TimeToMinutes(stime)+var2; TF2 = TM%Atime1; TF3 = TM%Atime2; MACDV1 = data1(ema(sum,short)-ema(sum,long)); MACDS1 = data1(ema(MACDV1,sig)); MACDO1 = MACDV1-MACDS1; if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF2 < TF2[1]) Then{ idx2 = idx2 + 1; PreEma21 = Ema21[1]; PreEma22 = Ema22[1]; PreMACDS2 = MACDS2[1]; } if idx2 <= 1 then { Ema21 = sum; Ema22 = sum; MACDV2 = Ema21-Ema22; MACDS2 = MACDv2; MACDO2 = MACDV2-MACDS2; } else{ Ema21 = sum * EP1 + PreEma21 * (1-EP1); Ema22 = sum * EP2 + PreEma22 * (1-EP2); MACDV2 = Ema21-Ema22; MACDS2 = MACDV2 * EP3 + PreMACDS2 * (1-EP3); MACDO2 = MACDV2-MACDS2; } if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF3 < TF3[1]) Then{ idx3 = idx3 + 1; PreEma31 = Ema31[1]; PreEma32 = Ema32[1]; PreMACDS3 = MACDS3[1]; } if idx3 <= 1 then { Ema31 = sum; Ema32 = sum; MACDV3 = Ema31-Ema32; MACDS3 = MACDv3; MACDO3 = MACDV3-MACDS3; } else{ Ema31 = sum * EP1 + PreEma31 * (1-EP1); Ema32 = sum * EP2 + PreEma32 * (1-EP2); MACDV3 = Ema31-Ema32; MACDS3 = MACDV3 * EP3 + PreMACDS3 * (1-EP3); MACDO3 = MACDV3-MACDS3; } if idx4 <= 1 then { Ema41 = sum; Ema42 = sum; MACDV4 = Ema41-Ema42; MACDS4 = MACDv4; MACDO4 = MACDV4-MACDS4; } else{ Ema41 = sum * EP1 + PreEma41 * (1-EP1); Ema42 = sum * EP2 + PreEma42 * (1-EP2); MACDV4 = Ema41-Ema42; MACDS4 = MACDV4 * EP3 + PreMACDS4 * (1-EP3); MACDO4 = MACDV4-MACDS4; } plot1(MACDO1,"기본차트"); plot2(MACDO2,"atime1"); plot3(MACDO3,"atime2"); plot4(MACDO4,"일봉"); PlotBaseLine1(0); 즐거운 하루되세요 > yes 님이 쓴 글입니다. > 제목 : 부탁 드립니다. > 운영자님~! 수식작성 노고에 깊이 감사드립니다. a)양합 MACD Oscillator b)10분봉 차트에서 (유로화 기준) 1)10분봉의 MACD Oscillator 2)60분봉으로계산되는 MACD Oscillator 3)120분봉으로계산되는 MACD Oscillator 4)일봉으로 계산되는 MACD Oscillator 를 10분봉 차트에서 동시에 구현 하고 싶을때의 지표식과 변수값 부탁 드립니다 미리 감사드리오며 경배 올립니다.
프로필 이미지

예스스탁 예스스탁 답변

2015-07-06 11:08:29

안녕하세요 예스스탁입니다. 한개의 데이터만 사용하면 수식중에 sum = data1(c)+data2(c); 를 아래처럼 수정하시면 됩니다 sum = data1(c); 수정한 식입니다. input : atime1(60),atime2(120),short(12),long(26),sig(9); var : sum(0,data1),EP1(0,data1),EP2(0,data1),EP3(0,data1); var : TM(0,data1),TF2(0,data1),TF3(0,data1); var : MACDV1(0,data1),MACDS1(0,data1),MACDO1(0,data1); var : idx2(0,data1),ema21(0,data1),ema22(0,data1); var : PreEma21(0,data1),PreEma22(0,data1),PreMACDS2(0,data1); var : MACDV2(0,data1),MACDS2(0,data1),MACDO2(0,data1); var : idx3(0,data1),ema31(0,data1),ema32(0,data1); var : PreEma31(0,data1),PreEma32(0,data1),PreMACDS3(0,data1); var : MACDV3(0,data1),MACDS3(0,data1),MACDO3(0,data1); var : idx4(0,data1),ema41(0,data1),ema42(0,data1); var : PreEma41(0,data1),PreEma42(0,data1),PreMACDS4(0,data1); var : MACDV4(0,data1),MACDS4(0,data1),MACDO4(0,data1); sum = data1(c); Ep1 = 2/(short+1); Ep2 = 2/(long+1); Ep3 = 2/(sig+1); if bdate != Bdate[1] Then{ var1 = stime; idx4 = idx4 + 1; PreEma31 = Ema31[1]; PreEma32 = Ema32[1]; PreMACDS3 = MACDS3[1]; } if date != date[1] Then var2 = TM[1]; if stime >= var1 Then TM = TimeToMinutes(stime)-TimeToMinutes(var1); Else TM = TimeToMinutes(stime)+var2; TF2 = TM%Atime1; TF3 = TM%Atime2; MACDV1 = data1(ema(sum,short)-ema(sum,long)); MACDS1 = data1(ema(MACDV1,sig)); MACDO1 = MACDV1-MACDS1; if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF2 < TF2[1]) Then{ idx2 = idx2 + 1; PreEma21 = Ema21[1]; PreEma22 = Ema22[1]; PreMACDS2 = MACDS2[1]; } if idx2 <= 1 then { Ema21 = sum; Ema22 = sum; MACDV2 = Ema21-Ema22; MACDS2 = MACDv2; MACDO2 = MACDV2-MACDS2; } else{ Ema21 = sum * EP1 + PreEma21 * (1-EP1); Ema22 = sum * EP2 + PreEma22 * (1-EP2); MACDV2 = Ema21-Ema22; MACDS2 = MACDV2 * EP3 + PreMACDS2 * (1-EP3); MACDO2 = MACDV2-MACDS2; } if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF3 < TF3[1]) Then{ idx3 = idx3 + 1; PreEma31 = Ema31[1]; PreEma32 = Ema32[1]; PreMACDS3 = MACDS3[1]; } if idx3 <= 1 then { Ema31 = sum; Ema32 = sum; MACDV3 = Ema31-Ema32; MACDS3 = MACDv3; MACDO3 = MACDV3-MACDS3; } else{ Ema31 = sum * EP1 + PreEma31 * (1-EP1); Ema32 = sum * EP2 + PreEma32 * (1-EP2); MACDV3 = Ema31-Ema32; MACDS3 = MACDV3 * EP3 + PreMACDS3 * (1-EP3); MACDO3 = MACDV3-MACDS3; } if idx4 <= 1 then { Ema41 = sum; Ema42 = sum; MACDV4 = Ema41-Ema42; MACDS4 = MACDv4; MACDO4 = MACDV4-MACDS4; } else{ Ema41 = sum * EP1 + PreEma41 * (1-EP1); Ema42 = sum * EP2 + PreEma42 * (1-EP2); MACDV4 = Ema41-Ema42; MACDS4 = MACDV4 * EP3 + PreMACDS4 * (1-EP3); MACDO4 = MACDV4-MACDS4; } plot1(MACDO1,"기본차트"); plot2(MACDO2,"atime1"); plot3(MACDO3,"atime2"); plot4(MACDO4,"일봉"); PlotBaseLine1(0); 즐거운 하루되세요 > yes 님이 쓴 글입니다. > 제목 : Re : Re : 부탁 드립니다. > 운영자님~~! 수십년전 투자를 시작한 때부터 지금까지 풀지 못했던 차트와 지표의 생성원리를 운영자님을 통해 최근에 서서히 풀려져 가는 느낌 입니다. 무어라 감사드려야 할지 말로 표현할수 없어 적당한 말을 기억해보니 이런말이 저의 마음을 대신하는 듯 합니다. 운영자님~~! 노고에 "감읍" 할따름 입니다. 엉키고 설킨 실타래를 수식으로 풀어 가는 듯 머지 않은 장래에 언젠가는 모두 풀것이라 생각 합니다. 언젠가는 연락 드릴 기회도 있을 것이라 확신 합니다. "감사 드리옵고 경배 올립니다." 아울러 아래 수식을 작성 해 주셨는데 대만족 이상의 수식 입니다. 추가로 아래 수식을 양합이 아닌 단합으로도 변경 부탁 드리고자 합니다. > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 부탁 드립니다. > 안녕하세요 예스스탁입니다. input : atime1(60),atime2(120),short(12),long(26),sig(9); var : sum(0,data1),EP1(0,data1),EP2(0,data1),EP3(0,data1); var : TM(0,data1),TF2(0,data1),TF3(0,data1); var : MACDV1(0,data1),MACDS1(0,data1),MACDO1(0,data1); var : idx2(0,data1),ema21(0,data1),ema22(0,data1); var : PreEma21(0,data1),PreEma22(0,data1),PreMACDS2(0,data1); var : MACDV2(0,data1),MACDS2(0,data1),MACDO2(0,data1); var : idx3(0,data1),ema31(0,data1),ema32(0,data1); var : PreEma31(0,data1),PreEma32(0,data1),PreMACDS3(0,data1); var : MACDV3(0,data1),MACDS3(0,data1),MACDO3(0,data1); var : idx4(0,data1),ema41(0,data1),ema42(0,data1); var : PreEma41(0,data1),PreEma42(0,data1),PreMACDS4(0,data1); var : MACDV4(0,data1),MACDS4(0,data1),MACDO4(0,data1); sum = data1(c)+data2(c); Ep1 = 2/(short+1); Ep2 = 2/(long+1); Ep3 = 2/(sig+1); if bdate != Bdate[1] Then{ var1 = stime; idx4 = idx4 + 1; PreEma31 = Ema31[1]; PreEma32 = Ema32[1]; PreMACDS3 = MACDS3[1]; } if date != date[1] Then var2 = TM[1]; if stime >= var1 Then TM = TimeToMinutes(stime)-TimeToMinutes(var1); Else TM = TimeToMinutes(stime)+var2; TF2 = TM%Atime1; TF3 = TM%Atime2; MACDV1 = data1(ema(sum,short)-ema(sum,long)); MACDS1 = data1(ema(MACDV1,sig)); MACDO1 = MACDV1-MACDS1; if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF2 < TF2[1]) Then{ idx2 = idx2 + 1; PreEma21 = Ema21[1]; PreEma22 = Ema22[1]; PreMACDS2 = MACDS2[1]; } if idx2 <= 1 then { Ema21 = sum; Ema22 = sum; MACDV2 = Ema21-Ema22; MACDS2 = MACDv2; MACDO2 = MACDV2-MACDS2; } else{ Ema21 = sum * EP1 + PreEma21 * (1-EP1); Ema22 = sum * EP2 + PreEma22 * (1-EP2); MACDV2 = Ema21-Ema22; MACDS2 = MACDV2 * EP3 + PreMACDS2 * (1-EP3); MACDO2 = MACDV2-MACDS2; } if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF3 < TF3[1]) Then{ idx3 = idx3 + 1; PreEma31 = Ema31[1]; PreEma32 = Ema32[1]; PreMACDS3 = MACDS3[1]; } if idx3 <= 1 then { Ema31 = sum; Ema32 = sum; MACDV3 = Ema31-Ema32; MACDS3 = MACDv3; MACDO3 = MACDV3-MACDS3; } else{ Ema31 = sum * EP1 + PreEma31 * (1-EP1); Ema32 = sum * EP2 + PreEma32 * (1-EP2); MACDV3 = Ema31-Ema32; MACDS3 = MACDV3 * EP3 + PreMACDS3 * (1-EP3); MACDO3 = MACDV3-MACDS3; } if idx4 <= 1 then { Ema41 = sum; Ema42 = sum; MACDV4 = Ema41-Ema42; MACDS4 = MACDv4; MACDO4 = MACDV4-MACDS4; } else{ Ema41 = sum * EP1 + PreEma41 * (1-EP1); Ema42 = sum * EP2 + PreEma42 * (1-EP2); MACDV4 = Ema41-Ema42; MACDS4 = MACDV4 * EP3 + PreMACDS4 * (1-EP3); MACDO4 = MACDV4-MACDS4; } plot1(MACDO1,"기본차트"); plot2(MACDO2,"atime1"); plot3(MACDO3,"atime2"); plot4(MACDO4,"일봉"); PlotBaseLine1(0); 즐거운 하루되세요 > yes 님이 쓴 글입니다. > 제목 : 부탁 드립니다. > 운영자님~! 수식작성 노고에 깊이 감사드립니다. a)양합 MACD Oscillator b)10분봉 차트에서 (유로화 기준) 1)10분봉의 MACD Oscillator 2)60분봉으로계산되는 MACD Oscillator 3)120분봉으로계산되는 MACD Oscillator 4)일봉으로 계산되는 MACD Oscillator 를 10분봉 차트에서 동시에 구현 하고 싶을때의 지표식과 변수값 부탁 드립니다 미리 감사드리오며 경배 올립니다.