커뮤니티

참조 데이터 관련 문의드립니다.

프로필 이미지
showtime
2013-03-14 16:03:02
195
글번호 60716
답변완료
지표식을 만들어 사용하던 중, 참조 data를 사용하는 경우 지표식 계산에 있어서 결과가 이상하게 나옵니다. 아래 간단한 샘플을 올립니다. ============================================= // source var77 = data2(C); //실제 사용하지는 않음. var1 = V; var2 = ma(V,3); var3 = ma(var1,3); if dayindex==0 && sdate==20130314 then { print("test.txt","ma(V,3):%f",var2); print("test.txt","ma(var1,3):%f",var3); print("test.txt","V:%f %f %f",V[2],V[1],V); print("test.txt","Var1:%f %f %f",Var1[2],Var1[1],Var1); } ========================================== 결과값 기본차트: 연결선물지수 1분봉 ========================================== 참조 data:ATM콜5분 2013-03-14 9:00:00 ma(V,3):4377.666667 2013-03-14 9:00:00 ma(var1,3):5085.666667 2013-03-14 9:00:00 V:1041.000000 3165.000000 8927.000000 2013-03-14 9:00:00 Var1:3165.000000 3165.000000 8927.000000 2013-03-14 9:00:00 ma(V,3):4377.666667 2013-03-14 9:00:00 ma(var1,3):7006.333333 2013-03-14 9:00:00 V:1041.000000 3165.000000 8927.000000 2013-03-14 9:00:00 Var1:3165.000000 8927.000000 8927.000000 참조 data:연결선물5분 2013-03-14 9:00:00 ma(V,3):4377.666667 2013-03-14 9:00:00 ma(var1,3):4377.666667 2013-03-14 9:00:00 V:1041.000000 3165.000000 8927.000000 2013-03-14 9:00:00 Var1:1041.000000 3165.000000 8927.000000 2013-03-14 9:00:00 ma(V,3):4377.666667 2013-03-14 9:00:00 ma(var1,3):7006.333333 2013-03-14 9:00:00 V:1041.000000 3165.000000 8927.000000 2013-03-14 9:00:00 Var1:3165.000000 8927.000000 8927.000000 참조 data:ATM콜1분 2013-03-14 9:00:00 ma(V,3):4377.666667 2013-03-14 9:00:00 ma(var1,3):5085.666667 2013-03-14 9:00:00 V:1041.000000 3165.000000 8927.000000 2013-03-14 9:00:00 Var1:3165.000000 3165.000000 8927.000000 참조 data:연결선물1분 2013-03-14 9:00:00 ma(V,3):4377.666667 2013-03-14 9:00:00 ma(var1,3):4377.666667 2013-03-14 9:00:00 V:1041.000000 3165.000000 8927.000000 2013-03-14 9:00:00 Var1:1041.000000 3165.000000 8927.000000 ============================================= 위의 결과에서 보이는 것 처럼 실제 식에서는 참조 data를 사용하지는 않고 TEST를 위해 V에 대한 이동평균만을 구하였습니다만... V를 사용하는 경우에는 정상적으로 계산이 되나 V를 var1으로 저장하여 계산하는 경우에는 참조 data 종류나 시간에 따라서 결과가 다 다르게 나타나는것처럼 보입니다. (날짜가 바뀌는 구간에서 차이가 나는 듯 합니다. => 참조를 5분봉 사용시에는 2번씩 print 되네요.) 대체로 날짜가 바뀌는 부근에서 뭔가 2번씩 계산되면서 V가 두번 저장되어 버리는것처럼 보입니다. 실제 지표식들은 아무래도 변수를 만들어 저장해서 사용해야 할 듯 한데.... 참조 data가 존재할 때 어떤 식으로 작성해야 오류가 없나요? 답변부탁드립니다~ 감사합니다.
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2013-03-14 19:24:48

안녕하세요 예스스탁입니다. 수식에서 참조데이터를 사용하실 때는 변수의 선언과 값이 어떤 데이터가 기준인지 명시를 해주셔야 합니다. 참조데이터를 사용하시는 경우 변수를 선언해 사용하시고 사용하실때 해당 데이터가 해당 데이터의 주기로 이전값을 참조할 수 있도록 선언에 데이터번호를 추가해 주시고 게산식 등도 데이터 번호로 묶어주시면 됩니다. var : V1(0,data1),V2(0,data1),V3(0,data1),V77(0,data2); v77 = data2(C); //실제 사용하지는 않음. v1 = data1(v); v2 = data1(ma(V,3)); v3 = data1(ma(v1,3)); if data1(dayindex==0 && sdate==20130314) then { print("test.txt","ma(V,3):%f",v2); print("test.txt","ma(var1,3):%f",v3); print("test.txt","V:%f %f %f",V[2],V[1],V); print("test.txt","Var1:%f %f %f",V1[2],V1[1],V1); } 즐거운 하루되세요 > showtime 님이 쓴 글입니다. > 제목 : 참조 데이터 관련 문의드립니다. > 지표식을 만들어 사용하던 중, 참조 data를 사용하는 경우 지표식 계산에 있어서 결과가 이상하게 나옵니다. 아래 간단한 샘플을 올립니다. ============================================= // source var77 = data2(C); //실제 사용하지는 않음. var1 = V; var2 = ma(V,3); var3 = ma(var1,3); if dayindex==0 && sdate==20130314 then { print("test.txt","ma(V,3):%f",var2); print("test.txt","ma(var1,3):%f",var3); print("test.txt","V:%f %f %f",V[2],V[1],V); print("test.txt","Var1:%f %f %f",Var1[2],Var1[1],Var1); } ========================================== 결과값 기본차트: 연결선물지수 1분봉 ========================================== 참조 data:ATM콜5분 2013-03-14 9:00:00 ma(V,3):4377.666667 2013-03-14 9:00:00 ma(var1,3):5085.666667 2013-03-14 9:00:00 V:1041.000000 3165.000000 8927.000000 2013-03-14 9:00:00 Var1:3165.000000 3165.000000 8927.000000 2013-03-14 9:00:00 ma(V,3):4377.666667 2013-03-14 9:00:00 ma(var1,3):7006.333333 2013-03-14 9:00:00 V:1041.000000 3165.000000 8927.000000 2013-03-14 9:00:00 Var1:3165.000000 8927.000000 8927.000000 참조 data:연결선물5분 2013-03-14 9:00:00 ma(V,3):4377.666667 2013-03-14 9:00:00 ma(var1,3):4377.666667 2013-03-14 9:00:00 V:1041.000000 3165.000000 8927.000000 2013-03-14 9:00:00 Var1:1041.000000 3165.000000 8927.000000 2013-03-14 9:00:00 ma(V,3):4377.666667 2013-03-14 9:00:00 ma(var1,3):7006.333333 2013-03-14 9:00:00 V:1041.000000 3165.000000 8927.000000 2013-03-14 9:00:00 Var1:3165.000000 8927.000000 8927.000000 참조 data:ATM콜1분 2013-03-14 9:00:00 ma(V,3):4377.666667 2013-03-14 9:00:00 ma(var1,3):5085.666667 2013-03-14 9:00:00 V:1041.000000 3165.000000 8927.000000 2013-03-14 9:00:00 Var1:3165.000000 3165.000000 8927.000000 참조 data:연결선물1분 2013-03-14 9:00:00 ma(V,3):4377.666667 2013-03-14 9:00:00 ma(var1,3):4377.666667 2013-03-14 9:00:00 V:1041.000000 3165.000000 8927.000000 2013-03-14 9:00:00 Var1:1041.000000 3165.000000 8927.000000 ============================================= 위의 결과에서 보이는 것 처럼 실제 식에서는 참조 data를 사용하지는 않고 TEST를 위해 V에 대한 이동평균만을 구하였습니다만... V를 사용하는 경우에는 정상적으로 계산이 되나 V를 var1으로 저장하여 계산하는 경우에는 참조 data 종류나 시간에 따라서 결과가 다 다르게 나타나는것처럼 보입니다. (날짜가 바뀌는 구간에서 차이가 나는 듯 합니다. => 참조를 5분봉 사용시에는 2번씩 print 되네요.) 대체로 날짜가 바뀌는 부근에서 뭔가 2번씩 계산되면서 V가 두번 저장되어 버리는것처럼 보입니다. 실제 지표식들은 아무래도 변수를 만들어 저장해서 사용해야 할 듯 한데.... 참조 data가 존재할 때 어떤 식으로 작성해야 오류가 없나요? 답변부탁드립니다~ 감사합니다.