커뮤니티
문의 드립니다.
2025-12-18 14:02:20
114
글번호 229150
안녕하세요 항상 감사드립니다.
아래의 조건에 가능한 시스템 서식을 부탁드립니다.
#코스피200 선물 기준 1. 진입조건: 15분봉(INPUT) 기준 60일선(INPUT)을 상향 돌파시 매수 진입, 하향 돌파시 매도 진입 2. 청산조건: 15분봉(INPUT) 기준 20일선(INPUT)을 하향(상향) 돌파시 청산 3. 손절: 5포인트
감사합니다.
*INPUT으로 표기된 부분은 INPUT으로 넣어주시기 부탁드립니다.
답변 1
예스스탁 예스스탁 답변
2025-12-19 09:45:33
안녕하세요
예스스탁입니다.
수식에서 차트 자체의 주기는 지정하지 못합니다.
15분 차트에 적용하는 내용이면 1번식으로 적용하시면 됩니다.
만약 1분봉이나 5분봉 등에서 15분 이평값을 계산해서 신호발생하는 내용이면
2번 식을 이용하시면 됩니다.
1
input : P1(20),P2(60),손절(5);
var1 = ma(C,P1);
var2 = ma(C,P2);
if CrossUp(C,var2) Then
Buy();
if CrossDown(c,var1) Then
ExitLong();
if CrossDown(c,var2) Then
Sell();
if CrossUp(c,var1) Then
ExitShort();
SetStopLoss(손절,PointStop);
2
input : 분(15),P1(20),P2(60),손절(5);
var : S1(0),D1(0),TM(0),TF(0),cnt(0);
var : sum1(0),mav1(0);
var : sum2(0),mav2(0);
Array : CC[100](0);
if Bdate != Bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = sdate;
}
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
TF = TM%분;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and 분 > 1 and TF < TF[1]) or
(Bdate == Bdate[1] and 분 > 1 and TM >= TM[1]+분) or
(Bdate == Bdate[1] and 분 == 1 and TM > TM[1]) Then
{
for cnt = 99 downto 1
{
CC[cnt] = CC[cnt-1];
}
}
CC[0] = C;
if CC[P1-1] > 0 then
{
sum1 = 0;
for cnt = 0 to P1-1
{
sum1 = sum1+CC[cnt];
}
mav1 = sum1/P1;
if CrossDown(C,mav1) Then
ExitLong();
if CrossUp(C,mav1) Then
ExitShort();
}
if CC[P2-1] > 0 then
{
sum2 = 0;
for cnt = 0 to P2-1
{
sum2 = sum2+CC[cnt];
}
mav2 = sum2/P2;
if CrossUp(C,mav2) Then
Buy();
if CrossDown(C,mav2) Then
Sell();
}
}
SetStopLoss(손절,PointStop);
즐거운 하루되세요
다음글
이전글