커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
5556
글번호 230811
답변완료
도움 부탁드립니다.
항상 답변 달아주셔서 감사합니다. 코로나가 극성인 가운데 건강하셨으면 좋겠습니다.
수식에 대해 제가 이해를 잘 못해서 그런데 옆에 제가 나름 설명하게 맞는지 확인 부탁드리겠습니다 (__) 매뉴얼 열심히 읽어보며 최대한 노력했는데도 잘 이해가 가지 않습니다. 제대로 확실히 이해하면 다음부터 질문 빈도가 줄어들 것 같습니다. 부탁드립니다.
input : 미국시작(223000),미국종료(060000);
input : 아시아시작(70000),아시아종료(160000);
Input : 당일수익틱수(30);
Var : N1(0),dayPl(0),당일수익(0),Xcond(false),dd(0);
var : Tcond1(false),Tcond2(false),Trade(False),XT(0),XD(0);
if (sdate != sdate[1] and stime >= 미국종료) or //'0시 이후의 봉이 미국 종료 시간보다 같거나 큰 상황'이거나
(sdate == sdate[1] and stime >= 미국종료 and stime[1] < 미국종료) Then //해당 봉과 전 봉의 시작 날짜가 같고 전봉은 미국 종료시간 전에 완성되고 지금 봉은 미국 종료시간 보다 같거나 클 때 완성 될 때,
{
Tcond1 = False; //트레이드 컨디션 = 거짓
}
if (sdate != sdate[1] and stime >= 미국시작) or //위와 비슷
(sdate == sdate[1] and stime >= 미국시작 and stime[1] < 미국시작) Then //위와 비슷
{
dd = dd+1; // 여기서 부터 이해가 안갑니다. dd가 왜 나왔나요? 왜 트레이딩이 시작되면 dd라는 변수에 1을 더한게 dd가 되게 하신건가요?
Tcond1 = true; //트레이딩 시작
N1 = NetProfit; // N1이란 변수는 청산 완료된 거래의 최종 손익
if XD == 0 or (XD > 0 and XT == 1 and DD >= XD+1) or (XD > 0 and XT == 2 and DD >= XD+2) Then //여기도 이해가 안갑니다..XD는 이미 0인데 이 해당 수식들이 무엇을 의미하나요?
Xcond = false; //멈춤 컨디션 = 거래 중지??
}
if (sdate != sdate[1] and stime >= 아시아종료) or //위와 비슷
(sdate == sdate[1] and stime >= 아시아종료 and stime[1] < 아시아종료) Then //위와 비슷
{
Tcond2 = False; //거래 컨디션 2번 = 거짓
Trade = False; //거래 컨디션 거짓
}
if (sdate != sdate[1] and stime >= 아시아시작) or //위와 비슷
(sdate == sdate[1] and stime >= 아시아시작 and stime[1] < 아시아시작) Then
{
Tcond2 = true; //거래 컨디션 2번= 참
Trade = False; //거래 컨디션 거짓
}
당일수익 = PriceScale*당일수익틱수; //당일 수익을 틱에 맞춰 환산
daypl = NetProfit-N1; //아까 이미 넷프로핏과 N1은 같다고 했는데 왜 여기선 빼나요?
if TotalTrades > TotalTrades[1] then // 종결된 총 거래횟수가 그 전 횟수보다 많다면
{
if daypl >= 당일수익 Then //?
{
Xcond = true;
XD = dd; //??
XT = 0; //??
if Tcond1 == true Then
XT = 1;
if Tcond2 == true Then
XT = 2;
}
if (IsExitName("dbp",1) == true or IsExitName("dbl",1) == true or
IsExitName("dsp",1) == true or IsExitName("dsl",1) == true) then
{
Xcond = true;
XD = dd;
XT = 0;
if Tcond1 == true Then
XT = 1;
if Tcond2 == true Then
XT = 2;
}
}
if Tcond2 == true and X Then
Trade = true;
if (Tcond1 == true or (Tcond2 == true and Trade == true)) and Xcond == False Then
ㅠㅠ 도와주십쇼
2021-05-10
1213
글번호 148887
회원 님에 의해서 삭제되었습니다.
2021-05-10
0
글번호 148886
답변완료
지표 질문입니다
최근 8캔들 가운데 (고가-저가) 폭이 가장 큰 양봉 고가(H)를 표시한다
최근 8캔들 가운데 (고가-저가) 폭이 가장 큰 양봉 저가(L)를 표시한다
(H*2-L)을 표시한다
(L*2-L)을 표시한다
최근 8캔들 가운데 (고가-저가) 폭이 가장 큰 음봉 고가(U)를 표시한다
최근 8캔들 가운데 (고가-저가) 폭이 가장 큰 음봉 저가(D)를 표시한다
(U*2-D)를 표시한다
(D*2-U)를 표시한다
감사합니다
2021-05-10
1155
글번호 148885
답변완료
죄송합니다,, 질문을 다시할게요
제 질문에 오류가 있었던것 같아요 ㅜㅡㅜ
주신 수식으로 검색해보니
한번침체 이후에 바로 신호가 뜨는
종목이 검색이 되더라구요
ㅜㅡㅜ
스토캐스틱 침체구간 이후에
두번째로 바닥구간을 이루고
(이때는 전 바닥보다 높아야 함)
한마디로 스토캐스틱 쌍바닥을 찍고
그다음 처음으로 신호가 뜨는 종목을 찾고 싶어요,,
부탁드릴게요 늘 수고많으십니다,,
하늘색 신호
S=sum(1);
M=ma(c,기간);
MH=valuewhen(1,M>M(1),M);
HH=HighestSince(1,CrossUp(S,전체봉수-표시봉수),MH);
CrossUP(C,HH) &&
HH=HH(1) &&HH(1)==HH(2)
전체봉수 600
기간 73
표시봉수 120
빨간색 신호
V > avg(V(1), p1) * m
&&
C > highest(C(1), p2)
지표변수
p1 10
p2 40
m 4
2021-05-10
1583
글번호 148884
답변완료
청산식에서
총 10번까지 분할매수되던 것들을 exitlong으로 청산 하는데 어느정도 대략 1~3회 매수가 되었을때는 100프로 청산이 이루어지는데,
좀 시간이 지나면서 천천히 6~10회 매수된 경우에는 100프로 청산이 안되고 일부만 청산이 되는 경우가 발생합니다.
분할매수는 수식으로 지정하였고, 시스템 걸때는 파라미딩 모든신호 발생 10회로 설정하는데
이렇게 부분매도만 되는경우는 설정상 문제일까요? 아니면 수식상 문제일까요?
혹시 챠트상 보여지는 봉 갯수의 차이에 따라 그런 현상이 생길수도 있는 걸까요?
2021-05-10
1365
글번호 148883
답변완료
지표수식 전환부탁
아래 수식1 내지 수식5를 강조수식으로 전환부탁드립니다.
수식1
CC=CCI(14);
if(CC>50,Max(C,O),0)
수식2
CC=CCI(14);
if(CC<-50,Max(C,O),0)
수식3
CC=CCI(14);
if(Crossup(CC,1),Max(C,O),0)
수식4
CC=CCI(14);
if(Crossdown(CC,1),Max(C,O),0)
수식5
min(C,O)
2021-05-10
1438
글번호 148881
답변완료
시스템 작동 기간 관련 질문 있습니다.
input : 미국시작(223000),미국종료(060000);
if (sdate != sdate[1] and stime >= 미국종료) or
(sdate == sdate[1] and stime >= 미국종료 and stime[1] < 미국종료) Then
{
Tcond1 = False;
}
라고 하셨는데요, 이해가 가지 않는 부분이 있어 여쭤봅니다.
Tcod1= False라는 의미는 해당 조건이 만족되면 매매를 하지 않겠다는 의미인 것은 이해했습니다.
근데 제일 첫번째 문단,
봉의 시작날짜와 봉[1]의 시작날짜가 같지 않으면서 <-- 즉 자정 12시 넘어서 시작되는 첫봉
and
봉의 시작 시간이 미국 종료시간인 060000보다 같거나 클때 라고 적혀있는데요,
이부분이 이해가 안갑니다.
자정 12시가 지나면 01시 부터 시작이니까 봉 시작 시간이 미국 종료시간보다 같거나 큰게 아니라 같거나 작어야하지 않나요??
2021-05-10
1287
글번호 148879
답변완료
수식 요청 드립니다.
안녕하세요.
1. 연결선물 당일청산 다수의 진입과 스위칭 또는 청산을 반복하는 분봉 시스템에서
매수 - 매도신호 발생 후 다음봉에 매수 신호가 연속 발생시 매수진입
매도 - 매수신호 발생 후 다음봉에 매도 신호가 연속 발생시 매수진입
진입수식(예제)의 진입신호가 1봉 이내 연속 반대신호일 인경우만 진입,
1봉 이상에서 반대 신호발생시 진입금지하는 수식 요청 드립니다.
#진입수식(예제)
Input : Period(12), sigPeriod(9);
value1 = TRIX(Period);
value2 = ema(value1, sigPeriod);
# 매수/매도청산
If CrossUP(value1, value2) Then{
Buy();
}
# 매도/매수청산
If CrossDown(value1, value2) Then{
Sell();
}
2021-05-10
991
글번호 148878
새벽에 님에 의해서 삭제되었습니다.
2021-05-10
22
글번호 148873