안녕하세요?
국내선물 1분봉으로 A전략, 5분봉으로 B전략, 10분봉으로 C전략을 하고 있는데
3개의 신호가 동일할 때 진입을 하는 전략을 구상중입니다.
가령 국내선물 1분봉으로 100ma 돌파 완성시 매수, 5분봉으로 60ma 돌파 완성시 매수,
10분봉으로 20m 돌파 완성시 매수하는데
3개 모두 매수신호 생성중이면 1분봉으로 매수를 진입하고 싶습니다.
스크립트를 수정해야 할까요? 참조함수를 쓰지 않고도 가능할까요?
샘플 부탁드립니다.
답변 1
예스스탁
예스스탁 답변
2023-07-21 18:43:44
안녕하세요
예스스탁입니다.
input : Period(100);
input : ntime1(5),Period1(60);
input : ntime2(10),Period2(20);
var : TF1(0),TF2(0),cnt(0);
var : mav(0),T(0);
var : sum1(0),mav1(0),sum11(0),mav11(0),T1(0);
var : sum2(0),mav2(0),sum21(0),mav21(0),T2(0);
Array : C1[100](0),C2[100](0);
#1분봉 이평계산 및 신호체크
mav = ma(C,Period);
if CrossUp(c,mav) Then
T = 1;
if CrossDown(c,mav) Then
T = -1;
#5분봉 이평계산 및 신호체크
TF1 = TimeToMinutes(NextBarStime)%ntime1;
if NextBarSdate != sdate or (NextBarSdate == sdate and TF1 < TF1[1]) Then
{
for cnt = 99 downto 1
{
C1[cnt] = C1[cnt-1];
}
C1[0] = C;
if C1[Period1] > 0 then
{
sum1 = 0;
sum11 = 0;
for cnt = 0 to Period1-1
{
sum1 = sum1+C1[cnt];
sum11 = sum11+C1[cnt];
}
mav1 = sum1/Period1;
mav11 = sum11/Period1;
if C1[0] > mav1 and C1[1] < mav11 Then
T1 = 1;
if C1[0] < mav1 and C1[1] > mav11 Then
T1 = -1;
}
}
#10분봉 이평계산 및 신호체크
TF2 = TimeToMinutes(NextBarStime)%ntime2;
if NextBarSdate != sdate or (NextBarSdate == sdate and TF2 < TF2[1]) Then
{
for cnt = 99 downto 1
{
C2[cnt] = C2[cnt-1];
}
C2[0] = C;
if C2[Period2] > 0 then
{
sum2 = 0;
sum21 = 0;
for cnt = 0 to Period2-1
{
sum2 = sum2+C2[cnt];
sum21 = sum21+C2[cnt];
}
mav2 = sum2/Period2;
mav21 = sum21/Period2;
if C2[0] > mav2 and C2[1] < mav21 Then
T2 = 1;
if C2[0] < mav2 and C2[1] > mav21 Then
T2 = -1;
}
}
Condition1 = T == 1 and T1 == 1 and T2 == 1;
Condition2 = T == -1 and T1 == -1 and T2 == -1;
if Condition1 == true and Condition1[1] == False Then
Buy();
if Condition2 == true and Condition2[1] == False Then
Sell();
즐거운 하루되세요
> 흰둥이아빠 님이 쓴 글입니다.
> 제목 : 함수요청
> 안녕하세요?
국내선물 1분봉으로 A전략, 5분봉으로 B전략, 10분봉으로 C전략을 하고 있는데
3개의 신호가 동일할 때 진입을 하는 전략을 구상중입니다.
가령 국내선물 1분봉으로 100ma 돌파 완성시 매수, 5분봉으로 60ma 돌파 완성시 매수,
10분봉으로 20m 돌파 완성시 매수하는데
3개 모두 매수신호 생성중이면 1분봉으로 매수를 진입하고 싶습니다.
스크립트를 수정해야 할까요? 참조함수를 쓰지 않고도 가능할까요?
샘플 부탁드립니다.