커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
6347
글번호 230811
답변완료
문의 드립니다.
안녕하세요.
늘 감사드립니다.
30분봉, 60분봉등 큰봉을 씁니다.
봉의 시가에서 매수하여 (200)틱 익절 (-150)틱 손절 하는 단순한 매매인데,
시뮬레이션 차트로 검증을 해보니,
진입후 해당 진입봉의 꼬리가 (-150)틱 이하로 내려갔다가 (200)틱 이상으로 가도 익절로 계산되어서 아주 과대계산 이 됩니다.
(큰시간봉에서는 한 봉내의 가격의 흐름 데이타가 없는 이유인듯)
실제 시스템 매매에는 적용하지 않더라도,
시뮬레이션 차트상에서만 이라도,
조건에 맞아 매수 진입한 해당봉의 꼬리가 input 으로 정한 손절(ex : -150) 이하이거나,
조건에 맞아 매도 진입한 해당봉의 꼬리가 input 으로 정한 손절(ex : 150) 이상이거나
진입하지 않은 다른봉의 꼬리는 상관없으나,
진입한 봉의 꼬리가 손절가이상에 해당하면
무조건 손절로 처리되어서
결과적으로는 손실로 결과 계산되어지게 하는 명령함수는 없을까요 ?
실제 매매시 실제 결과보다
시뮬레이션 결과가 과대 계산되어지는 오류를 막아보고자 합니다.
위의 사항을 구현할 수 없다면,
해당봉(진입한 봉의 꼬리가 손절가 이상) 의 갯수라도 차트상에 표기가 되었으면 좋겠는데요..
---------
개발자님 곁에 늘 좋은일 가득하길 바랍니다.
감사합니다. ~~
2023-05-15
1203
글번호 168958
답변완료
시스템신호가 조건에 맞는 경우에도 나오지 않습니다.
시스템신호를 이용하여 자동매매 프로그램 모의테스트를 진행중입니다.
예스랭기지 조건식에 맞는 경우에 처음 1번은 신호가 나오는데 이후에는 신호가 나오지 않습니다. 주기는 30틱, 60틱, 1분 등 여러가지로 바꿔 테스트를 해도 실시간 조건에서 신호가 나오지 않습니다. 지나간 신호에 대해서는 조건에 맞는 시스템 매매신호가 나오는 것을 확인했습니다.
예를들어 아래와 비슷한 조건식을 사용하여 테스트를 하는 중입니다.
- TSI가 0선 아래로 내려갈 경우 매도하고
- TSI가 0선 위로 올라갈 때 청산
실시간 매매신호가 정상적으로 나오게 하는 설정이 있는지 궁금하여 문의드립니다.
2023-05-15
1213
글번호 168956
답변완료
문의
답변 수식으로는
090300 첫봉에 진입하는 결과만 나옵니다.
체결가격도 다릅니다.
살펴주십시요.
*****************************************************************************
안녕하세요
예스스탁입니다.
input : ntime(100000);
var : T(0);
#날짜변경되면 T는 0
if Bdate != Bdate[1] Then
T = 0;
#10시 이후이면 1
if (bDate != bDate[1] and sTime >= ntime) or
(Bdate == Bdate[1] and sTime >= ntime and sTime[1] < ntime) Then
T = 1;
#10시 이후에 0.01까지 가격이 하락하면 T는 2
if T == 1 and L == 0.01 Then #(종가기준이면 C == 0.01)
T = 2;
#T는 2이고(0.01까지 하락후) 0.1이상 상승하면 즉시 매수
if T == 2 and H < 0.1 Then
{
Buy("b",AtStop,0.1);
}
즐거운 하루되세요
> 목마와숙녀 님이 쓴 글입니다.
> 제목 : Re : Re : 문의
> 수식을 그대로
콜atm+2단계에 적용했는데 가격대가 0.01과 0.10 이 아닙니다.
살펴주시기 바랍니다.
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 문의
>
안녕하세요
예스스탁입니다.
input : ntime(100000);
var : T(0);
if Bdate != Bdate[1] Then
T = 0;
if (bDate != bDate[1] and sTime >= ntime) or
(Bdate == Bdate[1] and sTime >= ntime and sTime[1] < ntime) Then
{
var1 = O;
T = 1;
}
if T == 1 and C <= var1-0.01 Then
T = 2;
if T == 2 and C >= var1+0.1 Then
{
T = 3;
Buy();
}
즐거운 하루되세요
> 목마와숙녀 님이 쓴 글입니다.
> 제목 : 문의
> 국내선물
데이트레이딩
if 10시에 가격이 하락하여 0.01 을 체결한 후 다시 상승하여 0.10 을 돌파 then
buy();
입력시간부터 발생한 봉부터 계산하는 것을 반영하여 주십시요.
수식 완성 부탁드립니다.
2023-05-15
771
글번호 168948
답변완료
매수매도 조건 설정 문의
수고많으십니다.
조건설정시
1차매수 : 2000주
2차매수 : 500주
3차매수 : 500주 ... 3차까지만 매수하고 싶습니다.
매도는
1차매도 : 평단대비 5% 상승시 비중의 30%만 매도 (최초 5%상승시 1번만 매도)
나머지 전량매도 : 매도조건 달성시 , 혹은 평단대비 -15% 하락시 손절
이렇게 하고 싶은데 어떻게 설정을 해야할까요??
2023-05-15
748
글번호 168947
신대륙발견 님에 의해서 삭제되었습니다.
2023-05-15
11
글번호 168946
답변완료
수식좀 요청 드립니다
* 항상 많은 도움에 고맙습니다.
* 아래 수식에서 점 이 다른데 찍히는데 2가지 요청 좀 드림니다.
1. 정배열 상태 에서만 점 찍히게 부탁 드립니다.
→ 정배열 기준 : VAR1 > VAR2 > VAR3 OR(또는) VAR1> VAR3 > VAR2
2. 역배열 상태 에서도 동일 하게 찍히게 작성 좀 요청 드립니다.
→ 역배열 기준 : VAR1 < VAR2 < VAR3 OR(또는) VAR1 < VAR3 < VAR2
## 아래 수식
VAR1 = MA(C,10) ;
VAR2 = MA(C,20) ;
VAR3 = MA(C,30) ;
Plot1(VAR1) ;
Plot2(VAR2) ;
Plot3(VAR3,"3",Black,DeF,1) ;
var : tx01(0);
if VAR1 > Var2 AND VAR1 >Var3 Then
{
if VAR1 > Var2 AND VAR1 > Var3 AND Var2 > Var3 Then
{
Tx01 = Text_New(sdate,stime,Var3,"■");
Text_SetStyle(Tx01,2,2);
Text_SetColor(Tx01,RED );
Text_SetSize(Tx01,12);
}
}
* 좋은 한주 되십시요.
2023-05-14
949
글번호 168945
답변완료
자동매매 거래시간
거래시간을 정하지않고 컴퓨터를 계속 켜놓으면 아침에(6시-7시) 사이 거래쉬는시간에
멈췄다가 7시 거래시작하면 자동으로 자동매매 시작되나요?
예를들어) 컴퓨터 1달동안 켜놓아도 (컴퓨터 정지하기전까지) 자동으로 돌아가나요?
2023-05-14
1472
글번호 168944
답변완료
수식부탁드립니다
스식부탁드립니다
data1과 data2 교차시 data2(C)를 var1으로 저장하고
data2(c)> var1*2 이런경우가 없을때 crossup(c,data2(c)) then buy();
의 수식을 부탁드립니다.
2023-05-14
1275
글번호 168943
답변완료
수식작성 부탁드립니다.
안녕하세요 운영자님
제가 요청드릴 시스템 수식은,
매수조건 : 캔들이 240일선 위에 있고, 아래 지표수식에서 B 가 프린팅 된 이후 ADX 가 기준
선 20을 Crossup
매도조건 : 캔들이 240일선 아래에 있고, 아래 지표수식에서 S 가 프린팅 된 이후 ADX 가
기준선 20을 Crossup
input : colorNormLength(3),dpoLength(13),moboDisplace(0),moboLength(10),numDevDn(-0.8),numDevUp(0.8);
#coloredMobo = input(true, "coloredMobo")
#coloredFill = input(true, "coloredFill")
#breakArrows = input(true, "breakArrows")
#moboShowMid = input(true, "moboShowMid")
var : price(0),xsma(0),dpo(0),Midline(0),sdev(0),LowerBand(0),UpperBand(0);
var : Signal1(False),Signal2(False),wasUp(0),wasDn(0),tx(0);
price = (H+L)/2;
xsma = ma(price[dpoLength / 2 + 1], dpoLength) ;
DPO = price - xsma;
Midline = ma(DPO, moboLength);
sDev = std(DPO, moboLength);
LowerBand = Midline + numDevDn * sDev;
UpperBand = Midline + numDevUp * sDev;
plot1(DPO,"DPO",Yellow);
plot2(Midline, "Mid",IFf(Midline > Midline[1],lime,red));
plot3(UpperBand,"UpperBand",black);
plot4(LowerBand,"LowerBand",black);
plot5(0,"0선",Gray);
Signal1 = DPO > UpperBand and DPO[1] < UpperBand[1];
Signal2 = DPO < LowerBand and DPO[1] > LowerBand[1];
wasUp = 1;
wasDn = 1;
wasUp = iff(Signal1 , 1 , IFf(Signal2 , 0 ,wasUp));
wasDn = iff(Signal2 , 1 , iff(Signal1 , 0 ,wasDn));
//plotshape(Signal1 and wasDn[1] ? UpperBand : na, style=shape.arrowup, location=location.absolute, size=size.normal, color=color.red)
//plotshape(Signal2 and wasUp[1] ? LowerBand : na, style=shape.arrowdown, location=location.absolute, size=size.normal, color=color.green)
if Signal1 and wasDn[1] Then
{
tx = Text_New_Self(sDate,sTime,UpperBand,"B");
Text_SetStyle(tx,2,1);
}
if Signal2 and wasUp[1] Then
{
tx = Text_New_Self(sDate,sTime,LowerBand,"S");
Text_SetStyle(tx,2,0);
}
감사합니다. 수고하세요.
2023-05-14
1132
글번호 168942