커뮤니티

타주기 시스템 변환

프로필 이미지
조민철
2017-08-15 23:33:21
160
글번호 112047
답변완료
항상 감사드립니다 아래식을 타주기시스템으로 변환해 주시기 바랍니다 시스템 신호 발생조건 본챠트 : 200틱봉 타주기 챠트 :3분봉 시스템신호 발생조건 : 아래 매수매도조건식이 본챠트및 타주기챠트를 동시만족시 청산식은 본챠트_200틱봉에만 적용 /********************************************************************/ ######################### ### 삼각가중 이평 ######## ########################## Inputs: Length11(200); Variables: TLen1(0),TRIma1(0); TLen1 = Ceiling((Length11 + 1) * 0.5); var97 = ma(ma(H, TLen1), TLen1); #72삼각가중이평_고가# var96 = ma(ma(C, TLen1), TLen1); #72삼각가중이평_종가# var95 = ma(ma(L, TLen1), TLen1); #72삼각가중이평_저가# /**************************************************************************/ Var : 기준선(0), 전환선(0), 선행스팬1(0), 선행스팬2(0),선행스팬3(0),T(0); 전환선 = (Highest(H, 9) + Lowest(L, 9)) / 2; 기준선 = (Highest(H, 26) + Lowest(L, 26)) / 2; 선행스팬1 = (전환선[25] + 기준선[25]) / 2 ; 선행스팬2 = (Highest(H, 52)[25] + Lowest(L, 52)[25]) / 2; 선행스팬3 = (highest(H,48)+lowest(L,48))/2; /************************************************************************/ Input : Period1(200),Period2(100); var : CCIv(0),CCIs(0); CCIv = CCI(Period1); CCIs = ema(CCIv,Period2); /***************************************/ Input : short(60),long(130),sig(9); Var : MACDv(0),MACDS(0); MACDv = MACD(short, long); MACDs = ema(MACDv,sig); /*****************************************/ Input: DIP(112); var : DP1(0),DM1(0),ZZ(0); DP1 = ema(iff(H-H[1]>0 && H-H[1]>L[1]-L,H-H[1],0),DIP)/ ema(max(max(H-L,abs(C[1]-H)),abs(C[1]-L)),DIP)*100; DM1 = ema(iff(L[1]-L>0 && H-H[1]<L[1]-L,L[1]-L,0),DIP)/ ema(max(max(H-L,abs(C[1]-H)),abs(C[1]-L)),DIP)*100; ZZ=ema(accum(ema(ema(DP1-DM1, 2), 2)),20); if ZZ > ZZ[1] Then var6 = 1; Else var6 = 0; #BASELINE: 0.5 # /*************************************************/ ################### ###### aroon ###### ################### input : Period10(56); var : Counter(0), Lowval(0), Highval(0), DownVel(0),UpVel(0), DnAroon(0),UpAroon(0) ; Lowval= Lowest(Low, Period10+1); Highval = Highest(High, Period10+1); For counter= 0 To Period10 { If Low[counter] == Lowval Then DownVel = counter; If High[counter] == highval Then UpVel = counter; } DnAroon = 100*(Period10-DownVel)/Period10; UpAroon = 100*(Period10-UpVel)/Period10; /*************************************************/ if crossup(전환선,선행스팬3) Then T = 1 ; if CrossDown(전환선,선행스팬3) Then T = -1 ; if T==1 and CCIv>0 Then T = 2 ; if T==-1 and CCIv<0 Then T = -2 ; if T == 2 and C > 선행스팬2 and macdv>macds and var6==1 and c>var97 and uparoon>dnaroon Then{ T = 3; buy("B1"); } if T == -2 and C < 선행스팬2 and macdv<macds and var6==0 and c<var95 and uparoon<dnaroon Then{ T = -3; sell("S1"); } ########################## ##### stok 돌파청산 ##### ########################## ### 본쟈트_200틱 적용시스템 ### if MarketPosition == 1 and crossdown(stok20,50) Then ExitLong("eB_stok_50"); if MarketPosition == -1 and crossup(stok20,50) Then ExitShort("eS_stok_50");
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2017-08-21 16:10:39

안녕하세요 예스스탁입니다. Input : Length11(200); Var : d1TLen1(0,data1),d1var97(0,data1),d1var96(0,data1),d1var95(0,data1); Var : d2TLen1(0,data2),d2var97(0,data2),d2var96(0,data2),d2var95(0,data2); d1TLen1 = data1(Ceiling((Length11 + 1) * 0.5)); d1var97 = data1(ma(ma(H, d1TLen1), d1TLen1)); #72삼각가중이평_고가# d1var96 = data1(ma(ma(C, d1TLen1), d1TLen1)); #72삼각가중이평_종가# d1var95 = data1(ma(ma(L, d1TLen1), d1TLen1)); #72삼각가중이평_저가# d2TLen1 = data2(Ceiling((Length11 + 1) * 0.5)); d2var97 = data2(ma(ma(H, d2TLen1), d2TLen1)); #72삼각가중이평_고가# d2var96 = data2(ma(ma(C, d2TLen1), d2TLen1)); #72삼각가중이평_종가# d2var95 = data2(ma(ma(L, d2TLen1), d2TLen1)); #72삼각가중이평_저가# /**************************************************************************/ Var : d1기준선(0,data1), d1전환선(0,data1), d1선행스팬1(0,data1), d1선행스팬2(0,data1),d1선행스팬3(0,data1),d1T(0,data1); Var : d2기준선(0,data2), d2전환선(0,data2), d2선행스팬1(0,data2), d2선행스팬2(0,data2),d2선행스팬3(0,data2),d2T(0,data2); d1전환선 = data1((Highest(H, 9) + Lowest(L, 9)) / 2); d1기준선 = data1((Highest(H, 26) + Lowest(L, 26)) / 2); d1선행스팬1 = data1((d1전환선[25] + d1기준선[25]) / 2); d1선행스팬2 = data1((Highest(H, 52)[25] + Lowest(L, 52)[25]) / 2); d1선행스팬3 = data1((highest(H,48)+lowest(L,48))/2); d2전환선 = data2((Highest(H, 9) + Lowest(L, 9)) / 2); d2기준선 = data2((Highest(H, 26) + Lowest(L, 26)) / 2); d2선행스팬1 = data2((d2전환선[25] + d2기준선[25]) / 2); d2선행스팬2 = data2((Highest(H, 52)[25] + Lowest(L, 52)[25]) / 2); d2선행스팬3 = data2((highest(H,48)+lowest(L,48))/2); /************************************************************************/ Input : Period1(200),Period2(100); var : d1CCIv(0,data1),d1CCIs(0,data1); var : d2CCIv(0,data2),d2CCIs(0,data2); d1CCIv = data1(CCI(Period1)); d1CCIs = data1(ema(d1CCIv,Period2)); /***************************************/ Input : short(60),long(130),sig(9); Var : d1MACDv(0,data1),d1MACDS(0,data1); Var : d2MACDv(0,data2),d2MACDS(0,data2); d1MACDv = data1(MACD(short, long)); d1MACDs = data1(ema(d1MACDv,sig)); d2MACDv = data2(MACD(short, long)); d2MACDs = data2(ema(d2MACDv,sig)); /*****************************************/ Input: DIP(112); var : d1DP1(0,data1),d1DM1(0,data1),d1ZZ(0,data1),d1var6(0,data1); var : d2DP1(0,data2),d2DM1(0,data2),d2ZZ(0,data2),d2var6(0,data2); d1DP1 = data1(ema(iff(H-H[1]>0 && H-H[1]>L[1]-L,H-H[1],0),DIP)/ ema(max(max(H-L,abs(C[1]-H)),abs(C[1]-L)),DIP)*100); d1DM1 = data1(ema(iff(L[1]-L>0 && H-H[1]<L[1]-L,L[1]-L,0),DIP)/ ema(max(max(H-L,abs(C[1]-H)),abs(C[1]-L)),DIP)*100); d1ZZ = data1(ema(accum(ema(ema(d1DP1-d1DM1, 2), 2)),20)); if d1ZZ > d1ZZ[1] Then d1var6 = 1; Else d1var6 = 0; #BASELINE: 0.5 # d2DP1 = data2(ema(iff(H-H[1]>0 && H-H[1]>L[1]-L,H-H[1],0),DIP)/ ema(max(max(H-L,abs(C[1]-H)),abs(C[1]-L)),DIP)*100); d2DM1 = data2(ema(iff(L[1]-L>0 && H-H[1]<L[1]-L,L[1]-L,0),DIP)/ ema(max(max(H-L,abs(C[1]-H)),abs(C[1]-L)),DIP)*100); d2ZZ = data2(ema(accum(ema(ema(d1DP1-d1DM1, 2), 2)),20)); if d2ZZ > d2ZZ[1] Then d2var6 = 1; Else d2var6 = 0; #BASELINE: 0.5 # /*************************************************/ ################### ###### aroon ###### ################### input : Period10(56); var : d1l(0,data1),d1h(0,data1),d1Counter(0,data1), d1Lowval(0,data1),d1Highval(0,data1); var : d1DownVel(0,data1),d1UpVel(0,data1),d1DnAroon(0,data1),d1UpAroon(0,data1); var : d2l(0,data2),d2h(0,data2),d2Counter(0,data2), d2Lowval(0,data2),d2highval(0,data2); var : d2DownVel(0,data2),d2UpVel(0,data2),d2DnAroon(0,data2),d2UpAroon(0,data2); d1L = data1(L); d1H = data1(H); d1Lowval = data1(Lowest(d1L, Period10+1)); d1Highval = data1(Highest(d1H, Period10+1)); For d1counter= 0 To Period10 { If d1L[d1counter] == d1Lowval Then d1DownVel = d1counter; If d1H[d1counter] == d1highval Then d1UpVel = d1counter; } d1DnAroon = 100*(Period10-d1DownVel)/Period10; d1UpAroon = 100*(Period10-d1UpVel)/Period10; d2L = data2(L); d2H = data2(H); d2Lowval = data2(Lowest(d2L, Period10+1)); d2Highval = data2(Highest(d2H, Period10+1)); For d2counter= 0 To Period10 { If d2L[d2counter] == d2Lowval Then d2DownVel = d2counter; If d2H[d2counter] == d2highval Then d2UpVel = d2counter; } d2DnAroon = 100*(Period10-d2DownVel)/Period10; d2UpAroon = 100*(Period10-d2UpVel)/Period10; /*************************************************/ if data1(crossup(d1전환선,d1선행스팬3)) Then d1T = 1 ; if data1(CrossDown(d1전환선,d1선행스팬3)) Then d1T = -1 ; if d1T == 1 and d1CCIv > 0 Then d1T = 2 ; if d1T == -1 and d1CCIv < 0 Then d1T = -2 ; if d1T == 2 and data1(C) > d1선행스팬2 and d1macdv > d1macds and d1var6 == 1 and data1(c) > d1var97 and d1uparoon > d1dnaroon Then{ d1T = 3; if d2T == 3 then buy("B1"); } if d1T == -2 and data1(C) < d1선행스팬2 and d1macdv < d1macds and d1var6 == 0 and data1(c) < d1var95 and d1uparoon < d1dnaroon Then{ d1T = -3; if d2t == -3 then sell("S1"); } /*************************************************/ if data2(crossup(d2전환선,d2선행스팬3)) Then d2T = 1 ; if data2(CrossDown(d2전환선,d2선행스팬3)) Then d2T = -1 ; if d2T == 1 and d2CCIv > 0 Then d2T = 2 ; if d2T == -1 and d2CCIv < 0 Then d2T = -2 ; if d2T == 2 and data2(C) > d2선행스팬2 and d2macdv > d2macds and d2var6 == 1 and data2(c) > d2var97 and d2uparoon > d2dnaroon Then{ d2T = 3; if d1T == 3 then buy("B2"); } if d2T == -2 and data2(C) < d2선행스팬2 and d2macdv < d2macds and d2var6 == 0 and data2(c) < d2var95 and d2uparoon < d2dnaroon Then{ d2T = -3; if d1T == -3 then sell("S2"); } ########################## ##### stok 돌파청산 ##### ########################## ### 본쟈트_200틱 적용시스템 ### var : stok20(0); stok20 = data1(StochasticsK(10,5)); if MarketPosition == 1 and crossdown(stok20,50) Then ExitLong("eB_stok_50"); if MarketPosition == -1 and crossup(stok20,50) Then ExitShort("eS_stok_50"); 즐거운 하루되세요 > 조민철 님이 쓴 글입니다. > 제목 : 타주기 시스템 변환 > 항상 감사드립니다 아래식을 타주기시스템으로 변환해 주시기 바랍니다 시스템 신호 발생조건 본챠트 : 200틱봉 타주기 챠트 :3분봉 시스템신호 발생조건 : 아래 매수매도조건식이 본챠트및 타주기챠트를 동시만족시 청산식은 본챠트_200틱봉에만 적용 /********************************************************************/ ######################### ### 삼각가중 이평 ######## ########################## Inputs: Length11(200); Variables: TLen1(0),TRIma1(0); TLen1 = Ceiling((Length11 + 1) * 0.5); var97 = ma(ma(H, TLen1), TLen1); #72삼각가중이평_고가# var96 = ma(ma(C, TLen1), TLen1); #72삼각가중이평_종가# var95 = ma(ma(L, TLen1), TLen1); #72삼각가중이평_저가# /**************************************************************************/ Var : 기준선(0), 전환선(0), 선행스팬1(0), 선행스팬2(0),선행스팬3(0),T(0); 전환선 = (Highest(H, 9) + Lowest(L, 9)) / 2; 기준선 = (Highest(H, 26) + Lowest(L, 26)) / 2; 선행스팬1 = (전환선[25] + 기준선[25]) / 2 ; 선행스팬2 = (Highest(H, 52)[25] + Lowest(L, 52)[25]) / 2; 선행스팬3 = (highest(H,48)+lowest(L,48))/2; /************************************************************************/ Input : Period1(200),Period2(100); var : CCIv(0),CCIs(0); CCIv = CCI(Period1); CCIs = ema(CCIv,Period2); /***************************************/ Input : short(60),long(130),sig(9); Var : MACDv(0),MACDS(0); MACDv = MACD(short, long); MACDs = ema(MACDv,sig); /*****************************************/ Input: DIP(112); var : DP1(0),DM1(0),ZZ(0); DP1 = ema(iff(H-H[1]>0 && H-H[1]>L[1]-L,H-H[1],0),DIP)/ ema(max(max(H-L,abs(C[1]-H)),abs(C[1]-L)),DIP)*100; DM1 = ema(iff(L[1]-L>0 && H-H[1]<L[1]-L,L[1]-L,0),DIP)/ ema(max(max(H-L,abs(C[1]-H)),abs(C[1]-L)),DIP)*100; ZZ=ema(accum(ema(ema(DP1-DM1, 2), 2)),20); if ZZ > ZZ[1] Then var6 = 1; Else var6 = 0; #BASELINE: 0.5 # /*************************************************/ ################### ###### aroon ###### ################### input : Period10(56); var : Counter(0), Lowval(0), Highval(0), DownVel(0),UpVel(0), DnAroon(0),UpAroon(0) ; Lowval= Lowest(Low, Period10+1); Highval = Highest(High, Period10+1); For counter= 0 To Period10 { If Low[counter] == Lowval Then DownVel = counter; If High[counter] == highval Then UpVel = counter; } DnAroon = 100*(Period10-DownVel)/Period10; UpAroon = 100*(Period10-UpVel)/Period10; /*************************************************/ if crossup(전환선,선행스팬3) Then T = 1 ; if CrossDown(전환선,선행스팬3) Then T = -1 ; if T==1 and CCIv>0 Then T = 2 ; if T==-1 and CCIv<0 Then T = -2 ; if T == 2 and C > 선행스팬2 and macdv>macds and var6==1 and c>var97 and uparoon>dnaroon Then{ T = 3; buy("B1"); } if T == -2 and C < 선행스팬2 and macdv<macds and var6==0 and c<var95 and uparoon<dnaroon Then{ T = -3; sell("S1"); } ########################## ##### stok 돌파청산 ##### ########################## ### 본쟈트_200틱 적용시스템 ### if MarketPosition == 1 and crossdown(stok20,50) Then ExitLong("eB_stok_50"); if MarketPosition == -1 and crossup(stok20,50) Then ExitShort("eS_stok_50");