input : 타주기분(60);
input : P(5);
var : S1(0),D1(0),TM(0),TF(0),mav(0);
mav = ma(C,P);
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
{
var1 = O;
}
if var1 > 0 then
{
if MarketPosition <= 0 and C > var1 and CrossUp(c,mav) Then
buy();
if MarketPosition == 1 and CrossDown(c,mav) Then
ExitLong();
if MarketPosition >= 0 and C < var1 and CrossDown(c,mav) Then
sell();
if MarketPosition == -1 and CrossUp(c,mav) Then
ExitShort();
}
}
위에 로직에서 당일 시가를 기준으로 하여 위에 있으면
60분봉이 양봉일 때만 매수 진입 매도 청산완료
당일 시가 아래 있으면
60분봉이 양봉일 때만 매도 진입 매수 청산완료
부탁드립니다.
답변 1
예스스탁
예스스탁 답변
2020-03-06 10:40:15
안녕하세요
예스스탁입니다.
input : 타주기분(60);
input : P(5);
var : S1(0),D1(0),TM(0),TF(0),mav(0),DO(0);
mav = ma(C,P);
if Bdate != Bdate[1] Then
{
DO = O;
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
{
var1 = O;
}
if var1 > 0 then
{
if MarketPosition <= 0 and C > DO and C > var1 and CrossUp(c,mav) Then
buy();
if MarketPosition == 1 and CrossDown(c,mav) Then
ExitLong();
if MarketPosition >= 0 and C < DO and C < var1 and CrossDown(c,mav) Then
sell();
if MarketPosition == -1 and CrossUp(c,mav) Then
ExitShort();
}
}
즐거운 하루되세요
> 선물대장 님이 쓴 글입니다.
> 제목 : 문의 드립니다
> input : 타주기분(60);
input : P(5);
var : S1(0),D1(0),TM(0),TF(0),mav(0);
mav = ma(C,P);
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
{
var1 = O;
}
if var1 > 0 then
{
if MarketPosition <= 0 and C > var1 and CrossUp(c,mav) Then
buy();
if MarketPosition == 1 and CrossDown(c,mav) Then
ExitLong();
if MarketPosition >= 0 and C < var1 and CrossDown(c,mav) Then
sell();
if MarketPosition == -1 and CrossUp(c,mav) Then
ExitShort();
}
}
위에 로직에서 당일 시가를 기준으로 하여 위에 있으면
60분봉이 양봉일 때만 매수 진입 매도 청산완료
당일 시가 아래 있으면
60분봉이 양봉일 때만 매도 진입 매수 청산완료
부탁드립니다.