커뮤니티
시스템식 차이 설명
2013-11-21 13:15:28
211
글번호 69687
항상감사드립니다
아래시스템을 돌려보니 각각 다른 결과가 나옵니다
시스템 A는 정상적인 시스템이고
시스템 B는 식자체의 논리가 잘못되어 있는 시스템입니다
근데 시스템 B 가 성과가 좋게 나와서 시스템식 설명부탁드립니다
1.시스템 A
Input : Period(12), sigPeriod(9);
var : TRIXv(0),TRIXsig(0);
TRIXv = TRIX(Period);
TRIXsig = ema(TRIX(Period),sigPeriod);
if crossup(TRIXv,0) Then
var1=1;
if CrossDown(TRIXv,0) Then
var1=-1;
if var1==1 and c>var23 Then
buy("매수1");
if var1==-1 and c<var21 Then
Sell("매도1");
2.시스템 B
input : Period1(23);
var1 =(AccumN(iff(C-C[1]>0,C-C[1],0),Period1)/AccumN(iff(C-C[1]>0,C-C[1],C[1]- C),Period1)*100);
Input : Period(12), sigPeriod(9);
var : TRIXv(0),TRIXsig(0);
TRIXv = TRIX(Period);
TRIXsig = ema(TRIX(Period),sigPeriod);
if crossup(TRIXv,0) Then
var1=1;
if CrossDown(TRIXv,0) Then
var1=-1;
Condition1 = ExitDate(1) == sdate and (IsExitName("bx",1) == true and IsExitName
("sx",1) == true);
if Condition1 == false and var1==1 and c>var23 Then
buy("B1");
if Condition1 == false and var1==-1 and c<var21 Then
sell("S1");
시스템A 와 시스템B 의 차이는 RSI 추가인데
시스템 B에서 var1이
var1 =(AccumN(iff(C-C[1]>0,C-C[1],0),Period1)/AccumN(iff(C-C[1]>0,C-C[1],C[1]- C),Period1)*100);
if crossup(TRIXv,0) Then
var1=1;
if CrossDown(TRIXv,0) Then
var1=-1;
로 이중으로 되어있습니다
시스템을 돌리면 신호는 에러가 나질않고 나오고 있습니다
설명부탁드립니다(시스템B)
감사드립니다..
답변 1
예스스탁 예스스탁 답변
2013-11-21 17:04:40
안녕하세요
예스스탁입니다.
1.
Input : Period(12), sigPeriod(9);
var : TRIXv(0),TRIXsig(0);
TRIXv = TRIX(Period);
TRIXsig = ema(TRIX(Period),sigPeriod);
if crossup(TRIXv,0) Then
var1=1;
if CrossDown(TRIXv,0) Then
var1=-1;
plot1(var1);
2.
input : Period1(23);
var1 =(AccumN(iff(C-C[1]>0,C-C[1],0),Period1)/AccumN(iff(C-C[1]>0,C-C[1],C[1]- C),Period1)*100);
Input : Period(12), sigPeriod(9);
var : TRIXv(0),TRIXsig(0);
TRIXv = TRIX(Period);
TRIXsig = ema(TRIX(Period),sigPeriod);
if crossup(TRIXv,0) Then
var1=1;
if CrossDown(TRIXv,0) Then
var1=-1;
plot1(var1);
위 2개의 수식을 지표식으로 작성해 차트에 걸어보시기 바랍니다.
수식은 봉마다 식상 첫번째 줄에서 마지막줄 즉 위에서 아래로 내려가면서
계산을 합니다.
1번수식은 트릭스가 0을 상향돌파하면 1값이 저장되고 계속 유지되다가
0을 하향이탈하면 -1이 저장되어 가게 됩니다.
하지만 2번식은 동일한 변수인 var1에 다른 계산식을 할당함으로써
0을 상향돌파나 하향이탈하는 봉을 제외하고 나머지 봉에서는
추가한 다른 계산식에서 나온 값을 가지게 됩니다.
진입식이 var1가 1이나 -1일때 신호가 발생하게 되어 잇는데
해당 값이 아닌 다른값으로 변경이 되므로
신호가 달라지게 되는 것입니다.
수식을 작성하실때 저장된는 값에 따라 각기 다른 변수를 지정해 주셔야 합니다.
즐거운 하루되세요
> 조민철 님이 쓴 글입니다.
> 제목 : 시스템식 차이 설명
> 항상감사드립니다
아래시스템을 돌려보니 각각 다른 결과가 나옵니다
시스템 A는 정상적인 시스템이고
시스템 B는 식자체의 논리가 잘못되어 있는 시스템입니다
근데 시스템 B 가 성과가 좋게 나와서 시스템식 설명부탁드립니다
1.시스템 A
Input : Period(12), sigPeriod(9);
var : TRIXv(0),TRIXsig(0);
TRIXv = TRIX(Period);
TRIXsig = ema(TRIX(Period),sigPeriod);
if crossup(TRIXv,0) Then
var1=1;
if CrossDown(TRIXv,0) Then
var1=-1;
if var1==1 and c>var23 Then
buy("매수1");
if var1==-1 and c<var21 Then
Sell("매도1");
2.시스템 B
input : Period1(23);
var1 =(AccumN(iff(C-C[1]>0,C-C[1],0),Period1)/AccumN(iff(C-C[1]>0,C-C[1],C[1]- C),Period1)*100);
Input : Period(12), sigPeriod(9);
var : TRIXv(0),TRIXsig(0);
TRIXv = TRIX(Period);
TRIXsig = ema(TRIX(Period),sigPeriod);
if crossup(TRIXv,0) Then
var1=1;
if CrossDown(TRIXv,0) Then
var1=-1;
Condition1 = ExitDate(1) == sdate and (IsExitName("bx",1) == true and IsExitName
("sx",1) == true);
if Condition1 == false and var1==1 and c>var23 Then
buy("B1");
if Condition1 == false and var1==-1 and c<var21 Then
sell("S1");
시스템A 와 시스템B 의 차이는 RSI 추가인데
시스템 B에서 var1이
var1 =(AccumN(iff(C-C[1]>0,C-C[1],0),Period1)/AccumN(iff(C-C[1]>0,C-C[1],C[1]- C),Period1)*100);
if crossup(TRIXv,0) Then
var1=1;
if CrossDown(TRIXv,0) Then
var1=-1;
로 이중으로 되어있습니다
시스템을 돌리면 신호는 에러가 나질않고 나오고 있습니다
설명부탁드립니다(시스템B)
감사드립니다..
다음글
이전글