커뮤니티
문의드립니다~
2017-09-25 02:54:24
160
글번호 113022
input : 분주기(30),P(5),분주기1(15);
var : S1(0),D1(0),TM(0),TF(0);
var : cnt(0),sum(0),mav(0),tf1(0),TFF(0),entry(false);
Array : CC[100](0),OO[100](0),HH[100](0),LL[100](0),TT[100](0),ii[100](0);
Array : C1[100](0),T1[100](0);
if (sdate != sdate[1] and stime >= 100000) or
(sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) Then{
S1 = TimeToMinutes(100000);
D1 = sdate;
}
if D1 > 0 then{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
TFF = TM%60;
TF = TM%분주기;
if (sdate != sdate[1] and stime >= 100000) or
(sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) or
(TF < TF[1]) Then{
OO[0] = o;
HH[0] = H;
LL[0] = L;
TT[0] = stime;
ii[0] = 0;
for cnt = 1 to 99{
OO[cnt] = OO[cnt-1][1];
HH[cnt] = HH[cnt-1][1];
LL[cnt] = LL[cnt-1][1];
CC[cnt] = CC[cnt-1][1];
TT[cnt] = TT[cnt-1][1];
ii[cnt] = ii[cnt-1][1];
}
}
if H > HH[0] Then
HH[0] = H;
if L < LL[0] Then
LL[0] = L;
CC[0] = C;
ii[0] = ii[0]+1;
TF1 = TM%분주기1;
if (sdate != sdate[1] and stime >= 100000) or
(sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) or
(TF1 < TF1[1]) Then{
T1[0] = stime;
for cnt = 1 to 99{
C1[cnt] = C1[cnt-1][1];
T1[cnt] = T1[cnt-1][1];
}
}
C1[0] = C;
entry = true;
if stime >= 120000 and stime < 45000 and ii[1]+ii[2] < 50 Then
entry = false;
}
1.위의 식 주기에 5분봉 주기를 추가하고 싶습니다~
2.위 식을 계속 사용하고 있는데 계속봐도 어떤 의미인지 해석이 안되어서요~
위 식 부분만 좀 자세하게 식 해석 좀 부탁드릴게요~
3.매수진입시점에 EntryPrice가 분주기 지표식 상으로 30분봉상 5봉전보다 낮으면 25틱익절
매도진입시점에 EntryPrice가 분주기 지표식 상으로 30분봉상 5봉전보다 높으면 25틱익절
진입시점의 30분봉의 5봉전 종가를 구할려고 하는데 식으로 표현하기가 어려워서 질문드려요~
4.예스글로벌에서는 우측위에 화면번호가 없어서요~ 원래 없는건가요?
그러면 화면저장을 해서 따로 불러와서 사용해야 되겠지요?
5.이프렌드글로벌이랑 예스글로벌이랑 틱차트가 다르거든요~
이프렌드에서 항생170틱이 예스글로벌에서는 항생80틱이랑 비슷한데요
왜 틱차트 값이 다른건지 질문드립니다.~
6.그리고 해외선물에서 이프렌드글로벌,예스글로벌에서 몇달전의 90틱값이 지금은 200틱정도로 틱값이 변경이 됐더라구요.~
매매하는 입장에서 틱값을 이렇게 크게 변경해 버리면 매매하는데 크게 지장을 받는데요
별다른 공지도 없었던거 같구요.~ 이부분에 대해서 아는부분있으시면 설명 좀 부탁드립니다~
감사합니다~ 좋은하루 되세요!
답변 1
예스스탁 예스스탁 답변
2017-09-25 14:02:00
안녕하세요
예스스탁입니다.
1.2
수식에 변수에 할당되는 값을 지표로 하나씩 그려보시면서
흐름을 판독하시기 바랍니다.
주석은 동일내용이므로 분주기1에만 추가해 드립니다.
input : P(5),분주기1(5),분주기2(15),분주기3(30);
var : S1(0),D1(0),TM(0),TF1(0),TF2(0),TF3(0);
var : cnt(0),entry(false);
Array : C1[100](0),O1[100](0),H1[100](0),L1[100](0),T1[100](0),i1[100](0);
Array : C2[100](0),O2[100](0),H2[100](0),L2[100](0),T2[100](0),i2[100](0);
Array : C3[100](0),O3[100](0),H3[100](0),L3[100](0),T3[100](0),i3[100](0);
#10시가 되면 0시이후 경과된 분수를 저장
if (sdate != sdate[1] and stime >= 100000) or
(sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) Then{
S1 = TimeToMinutes(100000);
D1 = sdate;
}
#위 내용에 의해 저장이 일어난 후에
if D1 > 0 then{
#10시 이후 부터 다음날 10시 전까지를 하나의 사이클로 보고
#하루경과시간(분)을 계산
#10시에서 밤 0시 전까지는 0시이후 경과된 분수에서 10시까지의 분수를 빼서 계한
//0시에서 10시 사이에는 0시이후 경과된 분세어 24시(1440분)에 해당하는 분수를 더하고 10시기준분수를 차감
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
#하루경과시간(분)을 5으로 나누어 나머지 값 계산
TF1 = TM%분주기1;
#5분 주기의 첫봉이 발생
if (sdate != sdate[1] and stime >= 100000) or
(sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) or
(TF1 < TF1[1]) Then{
//초기값 지정
O1[0] = o;
H1[0] = H;
L1[0] = L;
T1[0] = stime;
i1[0] = 0;
//배열[0]번방에 새로운 값을 저장해야 하므로
//각배열의 값을 다음방으로 순차적으로 옮김
//[0] --> [1], [1] --> [2], [2] -->[3]
for cnt = 1 to 99{
O1[cnt] = O1[cnt-1][1];
H1[cnt] = H1[cnt-1][1];
L1[cnt] = L1[cnt-1][1];
C1[cnt] = C1[cnt-1][1];
T1[cnt] = T1[cnt-1][1];
i1[cnt] = i1[cnt-1][1];
}
}
#더높은 고가가 발생하면 배열방의 값을 변경
if H > H1[0] Then
H1[0] = H;
#더낮은 저가가 발생하면 배열방의 값을 변경
if L < L1[0] Then
L1[0] = L;
#종가는 매봉 종가값으로 변경
C1[0] = C;
#5분주기 봉수를 저장
i1[0] = i1[0]+1;
#하루분수를 15으로 나누고 나머지 값 계산
TF1 = TM%분주기2;
if (sdate != sdate[1] and stime >= 100000) or
(sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) or
(TF2 < TF2[1]) Then{
O2[0] = o;
H2[0] = H;
L2[0] = L;
T2[0] = stime;
i2[0] = 0;
for cnt = 1 to 99{
O2[cnt] = O2[cnt-1][1];
H2[cnt] = H2[cnt-1][1];
L2[cnt] = L2[cnt-1][1];
C2[cnt] = C2[cnt-1][1];
T2[cnt] = T2[cnt-1][1];
i2[cnt] = i2[cnt-1][1];
}
}
if H > H2[0] Then
H2[0] = H;
if L < L2[0] Then
L2[0] = L;
C2[0] = C;
i2[0] = i2[0]+1;
#하루분수를 30으로 나누고 나머지 값 계산
TF3 = TM%분주기3;
if (sdate != sdate[1] and stime >= 100000) or
(sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) or
(TF3 < TF3[1]) Then{
O3[0] = o;
H3[0] = H;
L3[0] = L;
T3[0] = stime;
i3[0] = 0;
for cnt = 1 to 99{
O3[cnt] = O3[cnt-1][1];
H3[cnt] = H3[cnt-1][1];
L3[cnt] = L3[cnt-1][1];
C3[cnt] = C3[cnt-1][1];
T3[cnt] = T3[cnt-1][1];
i3[cnt] = i3[cnt-1][1];
}
}
if H > H3[0] Then
H3[0] = H;
if L < L3[0] Then
L3[0] = L;
C3[0] = C;
i3[0] = i3[0]+1;
entry = true;
if stime >= 120000 and stime < 45000 and i3[1]+i3[2] < 50 Then
entry = false;
}
3
input : P(5),분주기1(5),분주기2(15),분주기3(30);
var : S1(0),D1(0),TM(0),TF1(0),TF2(0),TF3(0);
var : cnt(0),entry(false);
Array : C1[100](0),O1[100](0),H1[100](0),L1[100](0),T1[100](0),i1[100](0);
Array : C2[100](0),O2[100](0),H2[100](0),L2[100](0),T2[100](0),i2[100](0);
Array : C3[100](0),O3[100](0),H3[100](0),L3[100](0),T3[100](0),i3[100](0);
#10시가 되면 0시이후 경과된 분수를 저장
if (sdate != sdate[1] and stime >= 100000) or
(sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) Then{
S1 = TimeToMinutes(100000);
D1 = sdate;
}
#위 내용에 의해 저장이 일어난 후에
if D1 > 0 then{
#10시 이후 부터 다음날 10시 전까지를 하나의 사이클로 보고
#하루경과시간(분)을 계산
#10시에서 밤 0시 전까지는 0시이후 경과된 분수에서 10시까지의 분수를 빼서 계한
//0시에서 10시 사이에는 0시이후 경과된 분세어 24시(1440분)에 해당하는 분수를 더하고 10시기준분수를 차감
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
#하루경과시간(분)을 5으로 나누어 나머지 값 계산
TF1 = TM%분주기1;
#5분 주기의 첫봉이 발생
if (sdate != sdate[1] and stime >= 100000) or
(sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) or
(TF1 < TF1[1]) Then{
//초기값 지정
O1[0] = o;
H1[0] = H;
L1[0] = L;
T1[0] = stime;
i1[0] = 0;
//배열[0]번방에 새로운 값을 저장해야 하므로
//각배열의 값을 다음방으로 순차적으로 옮김
//[0] --> [1], [1] --> [2], [2] -->[3]
for cnt = 1 to 99{
O1[cnt] = O1[cnt-1][1];
H1[cnt] = H1[cnt-1][1];
L1[cnt] = L1[cnt-1][1];
C1[cnt] = C1[cnt-1][1];
T1[cnt] = T1[cnt-1][1];
i1[cnt] = i1[cnt-1][1];
}
}
#더높은 고가가 발생하면 배열방의 값을 변경
if H > H1[0] Then
H1[0] = H;
#더낮은 저가가 발생하면 배열방의 값을 변경
if L < L1[0] Then
L1[0] = L;
#종가는 매봉 종가값으로 변경
C1[0] = C;
#5분주기 봉수를 저장
i1[0] = i1[0]+1;
#하루분수를 15으로 나누고 나머지 값 계산
TF1 = TM%분주기2;
if (sdate != sdate[1] and stime >= 100000) or
(sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) or
(TF2 < TF2[1]) Then{
O2[0] = o;
H2[0] = H;
L2[0] = L;
T2[0] = stime;
i2[0] = 0;
for cnt = 1 to 99{
O2[cnt] = O2[cnt-1][1];
H2[cnt] = H2[cnt-1][1];
L2[cnt] = L2[cnt-1][1];
C2[cnt] = C2[cnt-1][1];
T2[cnt] = T2[cnt-1][1];
i2[cnt] = i2[cnt-1][1];
}
}
if H > H2[0] Then
H2[0] = H;
if L < L2[0] Then
L2[0] = L;
C2[0] = C;
i2[0] = i2[0]+1;
#하루분수를 30으로 나누고 나머지 값 계산
TF3 = TM%분주기3;
if (sdate != sdate[1] and stime >= 100000) or
(sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) or
(TF3 < TF3[1]) Then{
O3[0] = o;
H3[0] = H;
L3[0] = L;
T3[0] = stime;
i3[0] = 0;
for cnt = 1 to 99{
O3[cnt] = O3[cnt-1][1];
H3[cnt] = H3[cnt-1][1];
L3[cnt] = L3[cnt-1][1];
C3[cnt] = C3[cnt-1][1];
T3[cnt] = T3[cnt-1][1];
i3[cnt] = i3[cnt-1][1];
}
}
if H > H3[0] Then
H3[0] = H;
if L < L3[0] Then
L3[0] = L;
C3[0] = C;
i3[0] = i3[0]+1;
entry = true;
if MarketPosition == 1 and EntryPrice < C3[5][BarsSinceEntry] Then
exitlong("bx",AtLimit,EntryPrice+PriceScale*25);
if MarketPosition == -1 and EntryPrice > C3[5][BarsSinceEntry] Then
ExitShort("sx",Atlimit,EntryPrice-PriceScale*25);
}
4,
예스글로벌도 각화면에는 번호가 있습니다.
화면번호가 없다는 부분이 정확히 어느부분을 말씀하시는지 파악하지 못했습니다.
02-3453-1060으로 전화주셔서 프로그램담당자와 통화를 해보시기 바랍니다.
5,6
해외선물의 경우 저희가 데이터를 관리하지 않아
데이터와 관련된 내용은 저희가 정확히 답변드릴수 없습니다.
해당 부분은 각 선물사에 문의해 주셔야 합니다.
즐거운 하루되세요
> 겐지 님이 쓴 글입니다.
> 제목 : 문의드립니다~
> input : 분주기(30),P(5),분주기1(15);
var : S1(0),D1(0),TM(0),TF(0);
var : cnt(0),sum(0),mav(0),tf1(0),TFF(0),entry(false);
Array : CC[100](0),OO[100](0),HH[100](0),LL[100](0),TT[100](0),ii[100](0);
Array : C1[100](0),T1[100](0);
if (sdate != sdate[1] and stime >= 100000) or
(sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) Then{
S1 = TimeToMinutes(100000);
D1 = sdate;
}
if D1 > 0 then{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
TFF = TM%60;
TF = TM%분주기;
if (sdate != sdate[1] and stime >= 100000) or
(sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) or
(TF < TF[1]) Then{
OO[0] = o;
HH[0] = H;
LL[0] = L;
TT[0] = stime;
ii[0] = 0;
for cnt = 1 to 99{
OO[cnt] = OO[cnt-1][1];
HH[cnt] = HH[cnt-1][1];
LL[cnt] = LL[cnt-1][1];
CC[cnt] = CC[cnt-1][1];
TT[cnt] = TT[cnt-1][1];
ii[cnt] = ii[cnt-1][1];
}
}
if H > HH[0] Then
HH[0] = H;
if L < LL[0] Then
LL[0] = L;
CC[0] = C;
ii[0] = ii[0]+1;
TF1 = TM%분주기1;
if (sdate != sdate[1] and stime >= 100000) or
(sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) or
(TF1 < TF1[1]) Then{
T1[0] = stime;
for cnt = 1 to 99{
C1[cnt] = C1[cnt-1][1];
T1[cnt] = T1[cnt-1][1];
}
}
C1[0] = C;
entry = true;
if stime >= 120000 and stime < 45000 and ii[1]+ii[2] < 50 Then
entry = false;
}
1.위의 식 주기에 5분봉 주기를 추가하고 싶습니다~
2.위 식을 계속 사용하고 있는데 계속봐도 어떤 의미인지 해석이 안되어서요~
위 식 부분만 좀 자세하게 식 해석 좀 부탁드릴게요~
3.매수진입시점에 EntryPrice가 분주기 지표식 상으로 30분봉상 5봉전보다 낮으면 25틱익절
매도진입시점에 EntryPrice가 분주기 지표식 상으로 30분봉상 5봉전보다 높으면 25틱익절
진입시점의 30분봉의 5봉전 종가를 구할려고 하는데 식으로 표현하기가 어려워서 질문드려요~
4.예스글로벌에서는 우측위에 화면번호가 없어서요~ 원래 없는건가요?
그러면 화면저장을 해서 따로 불러와서 사용해야 되겠지요?
5.이프렌드글로벌이랑 예스글로벌이랑 틱차트가 다르거든요~
이프렌드에서 항생170틱이 예스글로벌에서는 항생80틱이랑 비슷한데요
왜 틱차트 값이 다른건지 질문드립니다.~
6.그리고 해외선물에서 이프렌드글로벌,예스글로벌에서 몇달전의 90틱값이 지금은 200틱정도로 틱값이 변경이 됐더라구요.~
매매하는 입장에서 틱값을 이렇게 크게 변경해 버리면 매매하는데 크게 지장을 받는데요
별다른 공지도 없었던거 같구요.~ 이부분에 대해서 아는부분있으시면 설명 좀 부탁드립니다~
감사합니다~ 좋은하루 되세요!
다음글
이전글