커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7220
글번호 230811
답변완료
수식 부탁드립니다.
5분봉에서 전일거래량 10%발생하면서
5분봉에서 2%이상으로 일봉에서 60일 이동평균선 뚫고
1,2,3,4,5일전 종가위에 있으면서
전일대비 3%이상 상승한 종목에서 매수
수식 부탁드립니다.
2018-12-04
213
글번호 124139
답변완료
함수요청
안녕하세요?
아래 글번호 60311번 재질문 드립니다.
함수요청드립니다.
해외선물 크루드오일 30분봉으로 거래를 하고자 합니다.
써머타임 적용시에는 1번으로, 써머타임 해지시에는 2번전략으로 거래를 하고자 합니다.
하나의 스크립트로 요청드립니다.
1. 써머타임 적용시
-매수: 23시 30분 시점에 현재가 > 00시 30분 시점에 현재가 이면, 익일 1시 시초가 진입
-매도: 23시 30분 시점에 현재가 < 00시 30분 시점에 현재가 이면, 익일 1시 시초가 진입
-청산: SetStopEndOfday(043000);
-당일 진입, 당일 청산으로 1번 왕복 거래입니다.
2. 써머타임 해지시
-매수: 22시 30분 시점에 현재가 > 23시 30분 시점에 현재가 이면, 익일 0시 시초가 진입
-매도: 22시 30분 시점에 현재가 < 23시 30분 시점에 현재가 이면, 익일 0시 시초가 진입
-청산: SetStopEndOfday(033000);
-당일 진입, 당일 청산으로 1번 왕복 거래입니다.
두 시점의 현재가를 비교하여 특정 시각에 진입한다는 컨셉입니다.
그런데 작성주신 스크립트는 두 시점의 현재값을 비교하여 atmarket하는 걸로 주셨습니다.
바쁘시겠지만 검토 부탁드립니다.
2018-12-04
238
글번호 124136
답변완료
참조데이터 8개 활용 매매문의
5분봉 매매를 한다고 가정시.
주차트를 선물차트로 설정하고
참조데이터 8개를 옵션차트로 설정후
A라는 조건을 8개 옵션차트에 적용시킨 상태에서
8개 옵션차트중 6개 이상이 조건에 동시 만족하면
이전봉 종가에 매수주문 하는 식은 어떻게 하나요
2018-12-04
236
글번호 124132
답변완료
atlimit 주문 오류 문의
안녕하세요, 유진에서 원유해외선물을 거래하고 있습니다.
atlimit으로 주문을 내보내고 있는데, atlimit 주문이 채결 안된상태에서 profittarget주문이 먼저 나가게 되어 문의드립니다.
crossup(fast, slow) then sell("",atlimit, close + 1 pricescale) 으로 진입하여
0.1 tick 이익 또는 0.1tick 손실일때 profittarget이나 stoploss로 청산하는 전략이 있다고 할때, 방금 crossup(fast, slow) 조건을 만족하여 아래 가격으로 주문을 체결하려 합니다.
(시스템 매매설정에서 매매가격은 종가로 설정하였습니다.)
- 현재봉 종가 : 50.11
- atlimit 매도 주문가 : 50.12 atlimit
- profittarget 주문가 : 50.02 atstop
- stoploss 주문가 : 50.22 atstop
이때 다음봉의 고가가 50.12 였고 (atlimit 주문상 체결이 안될 수도 있다는 사항을 인지하고 있습니다.) 가격이 하락하여 50.00 까지 하락하였다고 가정하겠습니다.
여기서 제가 판단하는 시나리오는 두가지 인데
1) 50.12에서 체결이 되어 50.02에서 청산
2) 50.12에서 거래가 체결되지 못해 아무런 거래가 없음
예상하지 못한 3)의 상황이 발생하여 문의드립니다.
3) 50.12에서 체결이 되지 않고, 50.02에서 매수포지션 체결
3)의 상황과 같이 최초 50.12 최초 매도 주문 포지션의 실체결 여부를 파악하여 이후 청산 주문을 내보내는 방법은 없는지, 혹시 3)의 상황이 발생하면 별도의 청산 조건을 부여할 수는 없는지 문의 드립니다.
감사합니다.
2018-12-04
214
글번호 124125
답변완료
문의드립니다
아래 지표에 우측 끝까지 나타나는 수평라인을,
지표가 새로 갱신되는 지점까지만 나타나게 부탁드립니다
====================================================
Input : af(0.02), maxAF(0.2);
var : T(0),HH(0),LL(0),HD(0),HT(0),LD(0),LT(0),TL1(0),TL2(0),cnt(0),count(0);
Array : TL11[50](0),TL22[50](0);
var1 = CSar(af,maxAF);
if bdate != bdate[1] then
{
value1 = 0;
value2 = 0;
for cnt = 1 to 49
{
TL_Delete(TL11[cnt]);
TL_Delete(TL22[cnt]);
}
}
if crossup(c,var1) Then
{
T = 1;
HH = H;
HD = sdate;
HT = stime;
if LL > 0 Then
{
TL1 = TL_new(LD[1],LT[1],LL[1],HD,HT,HH);
}
if LD == sdate then
{
if value1 == 0 then
{
value1 = value1+1;
value11 = LL[1];
TL11[value1] = TL_New(LD[1],LT[1],LL[1],sdate,stime,LL);
TL_SetExtRight(TL11[value1],true);
}
if value1 > 0 and LL[1] < value11 then
{
value1 = value1+1;
value11 = LL[1];
TL11[value1] = TL_New(LD[1],LT[1],LL[1],sdate,stime,LL);
TL_SetExtRight(TL11[value1],true);
}
}
}
if CrossDown(c,var1) Then
{
T = -1;
LL = L;
LD = sdate;
LT = stime;
if HH > 0 Then
{
TL2 = TL_new(HD[1],HT[1],HH[1],LD,LT,LL);
}
if HD[1] == sdate then
{
if value2 == 0 then
{
value2 = value2+1;
value22 = HH[1];
TL22[value2] = TL_New(HD[1],HT[1],HH[1],sdate,stime,HH);
TL_SetExtRight(TL22[value2],true);
}
if value2 > 0 and HH[1] > value22 then
{
value2 = value2+1;
value22 = HH[1];
TL22[value2] = TL_New(HD[1],HT[1],HH[1],sdate,stime,HH);
TL_SetExtRight(TL22[value2],true);
}
}
}
if T == 1 then
{
if H > HH Then
{
HH = H;
HD = sdate;
HT = stime;
TL_SetEnd(TL1,HD,HT,HH);
}
}
if T == -1 then
{
if L < LL Then
{
LL = L;
LD = sdate;
LT = stime;
TL_SetEnd(TL2,LD,LT,LL);
}
}
2018-12-04
226
글번호 124119
답변완료
3단선 수식부탁 드립니다.
<요청1>
① 상단선이 이전 3개 상단선 보더 크면 매수, 작으면 매도 로직 좀 부탁 드립니다.
② 선 완성시 소리로 나오게 표현좀 부탁 드립니다.
PlaySound("C:₩예스트레이더₩data₩Sound₩stop"); 소리문장어디에 삽입하죠?
### 아래 수식
input : N(5);
var : idx(0),hh(0),d1(0),t1(0),TL(0),TF(0);
var : LL(0),TL2(0), mid(0), TL3(0);
if bdate != bdate[1] Then
idx = 0;
Else
idx = idx+1;
TF = idx%N;
if bdate != bdate[1] or (bdate == bdate[1] and TF < TF[1]) Then
{
hh = h;
LL = L;
mid = (hh+LL)/2;
d1 = sdate;
t1 = stime;
TL = TL_New(d1,t1,hh,sdate,stime,hh);
TL_SetColor(TL,RED);
TL2 = TL_New(d1,t1,LL,sdate,stime,LL);
TL_SetColor(TL2,blue);
TL3 = TL_New(d1,t1,mid,sdate,stime,mid);
TL_SetColor(TL3,gray);
}
else
{
if H > hh Then
hh = h;
if L < LL Then
LL = L;
mid = (hh+LL)/2;
TL_SetBegin(TL,d1,t1,hh);
TL_SetEnd(TL,sdate,stime,hh);
TL_SetBegin(TL2,d1,t1,LL);
TL_SetEnd(TL2,sdate,stime,LL);
TL_SetBegin(TL3,d1,t1,mid);
TL_SetEnd(TL3,sdate,stime,mid);
}
* 고맙 습니다.
2018-12-04
195
글번호 124118
답변완료
부탁 드립니다.
항상 맙습니다.
Williams'R 에사용되는 함수식 WILLR 입니다.
이것을 타주기 분용에 사용토록 부탁 드릴까 합니다.
/* Description : (Will)iams' (R)
*
* Provided By : YesStock Inc. (c) Copyright 2006
* E-Mail : webmaster@yesstock.com
*/
Input : Period(Numeric);
Var : value1(0), value2(0);
value1 = Highest(H, Period);
value2 = Lowest(L, period);
WILLR = (value1 - Close) / (value1 - value2) * (-100);
참고식)
input : 타주기분(30);
var : S1(0),D1(0),TM(0),TF(0),cnt(0),TH(0),TL(0);
var : value(0),pre(0),WAD(0);
Array : CC[10](0),HH[10](0),LL[10](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 TF < TF[1]) Then{
2018-12-04
347
글번호 124114
답변완료
시스템 구현 부탁드려요~
만약에 아래와 같은 수식을 한다면 양봉에서 사고 음봉에서 매도되나요"
아니면 서로 충돌이 일어나나요>?
매수 청산은 exitlong이자나요
if c<c[1] Then
Buy("매수");
if c>c[1] Then
Sell("매도");
=======================================================================
그리고 궁금한게 하나 더 있는데요...
아래 수식으로 하면 매수는 되는데 매도진입이 되지 않아여...
청산은 설정에서 "이익실현"으로 구현했구요
뭐가 잘못되었는지 알려주세요~~
input : Period(5);
input : P1(100),P2(1);
var : DParity(0);
DParity = Disparity(Period);
if CrossDown(DParity,P1) Then
Buy("매수");
if CrossUp(DParity,P2) Then
Sell("매도");
2018-12-04
238
글번호 124113
답변완료
부탁드립니다.
-해외선물 분봉차트에서 n일전부터 전일까지의 최고가 평균을 표시하는 지표식을 부탁드립니다.
2018-12-04
218
글번호 124112