예스스탁
예스스탁 답변
2024-01-24 14:18:27
안녕하세요
예스스탁입니다.
1
_PRICE_(C);
시뮬레이션 차트는 변수최적화 기능이 있어 외부변수(input)가 모두 숫자이어야 합니다.
_PRICE_가 데이터명 예약어명이므로 내부변수 처리해 드립니다.
2
시간설정에는 이상이 없습니다.
3
Input : StartTime(160500),EndTime(021000),XTime(025000);
Input: Period(5);
Input: Period1(5), Period2(20), Period3(60), Period4(120);
Input : 익절(1.50), 손절(0.6);
###########################################################
Var : v0(0),_PRICE_(0);
Var : Sma1(0),Sma2(0),Sma3(0),Sma4(0);
###########################################################
var : Tcond(false);
var : entry(0);
#############################################################
############################################################
_PRICE_ = C;
if sDate != sDate[1] Then
SetStopEndofday(xtime);
if (sdate != sdate[1] and stime >= EndTime) or
(sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then
Tcond = False;
if (sdate != sdate[1] and stime >= StartTime) or
(sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then
{
Tcond = true;
SetStopEndofday(0);
entry = 0;
}
############################################################
v0 = Ema(Ema(Ema(_PRICE_,Period),Period),Period);
###########################################################
Sma1 = ma(C,Period1);
Sma2 = ma(C,Period2);
Sma3 = ma(C,Period3);
Sma4 = ma(C,Period4);
################################################################
if Tcond == true Then
{
################################################################
#매수 수식
if MarketPosition <= 0 Then {
If CrossUp(Sma1,v0) then
Buy("b1");
}
################################################################
#매도 수식
if MarketPosition >= 0 Then {
if CrossDown(Sma1,v0) Then
Sell("s1");
}
################################################################
}
SetStopProfittarget(익절,PointStop);
SetStopLoss (손절,PointStop);
즐거운 하루되세요
> cooparoo 님이 쓴 글입니다.
> 제목 : 문의 드립니다.
> 안녕하세요!
아래 수식으로 전략실행(실시간)차트에서는 신호가 발생하는데요
시뮬레이션 차트에서는 신호가 발생하지 않습니다.(SI증권)
무엇이 잘못되었는지 수정부탁 드립니다.
그리고 매매시간 설정도 잘 되었는지 검토 부탁드립니다.
오전 8시05분 시작해서 다음날 오전 06시50분에 강제청산이고
04시 이후로는 신규진입은 제한하는 수식입니다.(외부변수 처리)
감사합니다.
Input : StartTime(160500),EndTime(021000),XTime(025000);
Input: Period(5),_PRICE_(C);
Input: Period1(5), Period2(20), Period3(60), Period4(120);
Input : 익절(1.50), 손절(0.6);
###########################################################
Var : v0(0);
Var : Sma1(0),Sma2(0),Sma3(0),Sma4(0);
###########################################################
var : Tcond(false);
var : entry(0);
#############################################################
############################################################
if sDate != sDate[1] Then
SetStopEndofday(xtime);
if (sdate != sdate[1] and stime >= EndTime) or
(sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then
Tcond = False;
if (sdate != sdate[1] and stime >= StartTime) or
(sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then
{
Tcond = true;
SetStopEndofday(0);
entry = 0;
}
############################################################
v0 = Ema(Ema(Ema(_PRICE_,Period),Period),Period);
###########################################################
Sma1 = ma(C,Period1);
Sma2 = ma(C,Period2);
Sma3 = ma(C,Period3);
Sma4 = ma(C,Period4);
################################################################
if Tcond == true Then
{
################################################################
#매수 수식
if MarketPosition <= 0 Then {
If CrossUp(Sma1,v0) then
Buy("b1");
}
################################################################
#매도 수식
if MarketPosition >= 0 Then {
if CrossDown(Sma1,v0) Then
Sell("s1");
}
################################################################
}
SetStopProfittarget(익절,PointStop);
SetStopLoss (손절,PointStop);