커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7507
글번호 230811
답변완료
부탁드립니다
1
""9시이후 & 중심선(중)이 시가(시)위로 간 이후 &
중>시 & 중[1]==중[2] & 중[2]==중[3] & 중>중[1]의 현상이 n번째 나타났을 때"
를 시스템식으로 나타내면 어떻게 되는지요?
2
b1,b2,b3 3가지 방법으로 1계약씩 진입하는데요.(b1과 b3는 함께 진입되어있는 경우가 없게 되어 있습니다)
매수가 (b1,b2) 또는 (b2,b3) 이렇게 2계약이 되어있는 경우에
둘중 어느 것이건 자기매수가+0.70에 1계약만 익절코자 한다면
매수청산식을 어떻게 설정해야 하는지요.
2014-05-27
158
글번호 75398
답변완료
문의 (NR)
1. 아래식을 간단히 할 수 있는 방법이 있을까요?
if COUNTIF((MTX, MTS), 2) >= 2 then MTXxTS.xELGetReady = TRUE; 라고 해주면 잘 되지 않더군요.
VARS: MTXxTS.xELCheck(0, DATA1);
VARS: MTXx1.xELiDX(-1, DATA1), MTXxTS.xELiDX(-1, DATA1);
VARS: MTXx1.xELGetReady(FALSE, DATA1), MTXxTS.xELGetReady(FALSE, DATA1);
if (MarketPosition == 1) then
{
// CROSSUP
if ( (MTXxTS.xELCheck == 0) AND (MTXxTS.xELGetReady == FALSE) AND (MTX > MTS) ) then { MTXxTS.xELCheck = 1; }
if ( (MTXxTS.xELCheck == 1) AND (DATA1(CROSSDOWN(MTX, MTS))) ) then { MTXxTS.xELCheck = 2; }
if ( (MTXxTS.xELCheck == 2) AND (MTX < MTS) ) then { MTXxTS.xELCheck = 3; }
if ( (MTXxTS.xELCheck == 3) AND (DATA1(CROSSUP(MTX, MTS))) ) then { MTXxTS.xELCheck = 4; }
if ( (MTXxTS.xELCheck == 4) AND (MTX > MTS) ) then { MTXxTS.xELCheck = 5; }
if ( (MTXxTS.xELCheck == 5) AND (DATA1(CROSSDOWN(MTX, MTS))) ) then { MTXxTS.xELGetReady = TRUE; }
if ( (MTXxTS.xELGetReady == TRUE) AND (DATA1(CROSSUP(MTX, MTS + PRICESCALE * 10))) ) then { MTXxTS.xELGetReady = FALSE; MTXxTS.xELCheck = 0; }
}
if (MarketPosition == 0 AND MarketPosition(1) == 1) then
{
MTXxTS.xELCheck = 0;
MTXxTS.xELGetReady = FALSE;
}
2. 전화상 설명을 드렸는데 바쁘시더라도 36395번 답변 다시한번 부탁드리겠습니다.
3. 전화상 말씀드렸던 해외선물 포지션 운용시에 아래 수식에 대해 초기화 시점에 대해 궁금합니다. 데이트레이딩 같은경우 DAYINDEX를 이용하여 초기화를 시키고 값을 비교하면서 나아가는데, 포지션 같은 경우 일자가 변경되도 계속 값을 가지고 있어야 하는데 좀처럼 진도가 나가질 않습니다. 방향제시 부탁드리겠습니다..
VARS: MCGxMT(0), X(1.135);
MCGxMT = ROUND(((M1 / M2 + M3 / M4) / X * 100), 5);
VARS: MCGxMT.HST(0;
VARS: MCGxMT.LST(0);
VARS: MCGxMT.HSTiDX(-1);
VARS: MCGxMT.LSTiDX(-1);
// INIT (MARKET OPENNING TIME)
if ( (stime == 170000) OR ((stime > 170000 AND stime[1] < 170000)) ) then
{
MCGxMT.HST = 0;
MCGxMT.LST = 0;
MCGxMT.HSTiDX = -1;
MCGxMT.LSTiDX = -1;
}
if (DayIndex == 0) Then
{
MCGxMT.HST = MCGxMT; MCGxLT.HST = MCGxLT;
MCGxMT.LST = MCGxMT; MCGxLT.LST = MCGxLT;
}
else if (DayIndex > 0) then
{
if (MCGxMT > MCGxMT.HST) then { MCGxMT.HST = MCGxMT; MCGxMT.HSTiDX = Z1iDX; }
else if (MCGxMT < MCGxMT.LST) then { MCGxMT.LST = MCGxMT; MCGxMT.LSTiDX = Z1iDX; }
늘 친절한 답변에 감사드립니다..
2014-05-27
164
글번호 75392
외환달러 님에 의해서 삭제되었습니다.
2014-05-27
6
글번호 75390
답변완료
수식작성
항상 친절한 답변에 감사드립니다. 배우기 시작한지 얼마되지 않아 적당한 사례들을 찾을 수가 없어서 송구스럽게도 매번 부탁드리게 되네요.
하나의 전략차트에 첨부한 것과 같이 콜풋 행사가 262, 260, 257의 6개 종목을 하나의 차트에 담았습니다.
알고싶은 것은 이렇게 6개 종목 각 캔들의 하루분 고가,저가,종가들(1분봉이면 한종목당 366 X 3개)을 워크영역에 저장하여 데이타를 활용하고자 합니다.
데이타의 활용방법은 예를들어 콜 260과 현재가가 비슷한 풋종목을 찾아서 고가,저가,현재가 등을 비교하여 가격이 비슷(예를 들면 5~10틱 이내?)한 상대종목의
ㅇ 고가돌파이탈여부,
ㅇ 저가돌파이탈여부,
ㅇ 현재가의 돌파이탈여부를 판별하여
해당종목 해당가격에 점표시를 하고자 합니다. 비교범위는 현재봉을 기준으로 이전캔들 2개를 포함하여 3개 캔들을 비교분석하는 것입니다.
부담이 되신다면 참고가 될만한 비슷한 유형의 프르그램을 소개하여 주시면 감사하겠습니다.
2014-05-27
234
글번호 75389
답변완료
문의 드립니다.
아래 수식은 현재 사용중인 청산 조건 입니다.
if MarketPosition == 1 and IsEntryName("e") == True Then{
if CodeCategoryEx == 11 and BasePrice < 50000 Then
xvol = int(int((MaxContracts*1.0)/10)*10);
Else
Xvol = int(MaxContracts*1.0);
if sdate == EntryDate Then
ExitLong("bx22",AtStop,EntryPrice*0.90);
if CurrentContracts == MaxContracts and daycnt == daycnt[BarsSinceEntry]+1 Then{
if C < DayClose(1)-PriceScale*10 Then
ExitLong("bx23");
exitlong("bx24",AtStop,EntryPrice-PriceScale*10);
}
if CurrentContracts == MaxContracts and daycnt == daycnt[BarsSinceEntry]+2 Then{
if dayindex == 0 and dayopen < DayClose(1) Then
ExitLong("bx25",AtStop,EntryPrice*0.90);
if dayopen > DayClose(1) Then
ExitLong("bx26",atstop,DayClose*0.90);
ExitLong("bx27",atstop,DayHigh*0.90);
}
if CurrentContracts == MaxContracts and daycnt == daycnt[BarsSinceEntry]+3 Then{
if dayindex == 0 and dayopen < DayClose(1) Then
ExitLong("bx28");
if C < dayhigh(1)-PriceScale*10 Then
ExitLong("bx29");
if CrossDown(c,var5) Then
ExitLong("bx30");
ExitLong("bx31",atstop,DayHigh*0.90);
if stime == 150000 Then
ExitLong("ende");
오늘 진입후 오늘 청산이 됐는데 왜 청산 신호가 발생했는지 이해가 안가서 문의 드립니다.
파일 첨부 합니다 살펴봐 주세요.
감사합니다
2014-05-27
191
글번호 75383
답변완료
순매도 금액 혹은 수량
Data2혹은 Data3에 참조데이터를 놓고 계산식을 만들어 새로운 지표를 만들어보려합니다.
예를 들어서
외국인 혹은 기관의 선물, 풋, 콜옵션의 매도수량 혹은 매도 금액을 지표로 만들어보려고 합니다. 참조표에는 순매수 금액과 수량만 나와 있어서 말이지요
감사합니다.
2014-05-27
149
글번호 75379
답변완료
시스템식 문의드립니다.
수고하십니다.
어제 시가와 종가의 합이 아래 보다 크면 오늘 아침 시초가에 매수진입하고
어제 시가와 종가의 합이 아래보다 작으면 오늘 아침 시초가에 매도진입하는
수식 부탁드립니다.
매일 종가에 청산하는 방법으로 해서 시뮬레이션 해보고 싶은데요.
일봉으로 시뮬레이션 하면 되는지...
만기일은 시간이 틀리니... 어떠한 방법으로 수식을 만들어야 하는지 궁금합니다.
금요일은 거래 안하는 수식도 같이 부탁드립니다. 감사합니다.
2014-05-27
230
글번호 75378
답변완료
CT 문법 변환 부탁 드립니다.
CT에서의 For 문입니다.
예스랭귀지로 변환 부탁 드립니다.
For i = 0 To 3
If I = 0 Then
MinPrice = Close(i)
Else
If MinPrice > Close(i) Then
MinPrice = Close(i)
End If
End If
Next
Call PlotI1(“최저종가”, MinPrice)
2014-05-27
173
글번호 75375
답변완료
종목검색식 의뢰드립니다
어떻게 돌아가게 만들수 있을까요
2014-05-27
168
글번호 75374