커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
5406
글번호 230811
답변완료
라인이용 시스템식
항상감사드립니다.
아래조건을 시스템으로 만들고자 합니다.
// 피봇1차저항 라인
var1 = (((dayOpen(1)+dayHigh(1)+dayLow(1)+dayClose(1))/4)*2)-dayLow(1);
1.현재봉보다 1개 이전봉이 라인위에(var1) 위치하고 현재봉이 라인(var1)터치시 매수
현재봉보다 1개 이전봉이 라인아래에(var1) 위치하고 현재봉이 라인(var1)터치시 매도
2.현재봉보다 1개 이전봉이 라인(var1)을 상향돌파하고 현재봉이 라인(var1)터치시 매수
현재봉보다 1개 이전봉이 라인(var1)을 하향돌파하고 현재봉이 라인(var1)터치시 매도
*** 현재봉이 완성봉이 아닌 라인터치시 매수/매도 신호가 나와야 합니다.
감사합니다
2019-10-02
209
글번호 132439
답변완료
문의드립니다.
지표를 5개 사용한다고 할때
5개 지표안에 동일한 수식이 들어가고 그 값을 토대로 5가지 지표가 만들어진다면
동일 수식을 사용자 함수로 만들어 사용하면 계산이나 차트 속도가 개선되나요?
2019-10-01
199
글번호 132438
부양가족 님에 의해서 삭제되었습니다.
2019-10-01
1
글번호 132437
답변완료
수정부탁드립니다.
안녕하세요? 아래 수식 수정좀 부탁드립니다.
1)날짜와 시간을 삭제해서 구애받지않게 해주세요.
2)하루매매횟수를 외부변수로 정할수있게 부탁드립니다.
2)익절과 손절, 그리고 트레일링 스탑을 외부변수로 조정할수있도록 빼주세요.
감사합니다.
Input : CurDate(20140604), StopTime(151500);
Var : DHigh(0), DLow(0);
If sDate == CurDate AND sTime == 90000 Then {
DHigh = H;
DLow = L;
}
If sDate == CurDate AND sTime >= 90100 Then {
If sTime >= StopTime Then {
ExitShort();
ExitLong();
} Else {
If MarketPosition == 0 Then {
/************ Gab ************/
// 갭상승 후 양봉
If O[0] > C[1] AND C[0] > O[0] Then {
Buy("GabB1", OnClose, C);
}
// 갭하락 후 양봉
If C[1] > O[0] AND C[0] > O[0] Then {
Buy("GabB2", OnClose, C);
}
// 갭상승 후 음봉
If O[0] > C[1] AND C[0] < O[0] Then {
Sell("GabS1", OnClose, C);
}
// 갭하락 후 음봉
If C[1] > O[0] AND C[0] < O[0] Then {
Sell("GabS2", OnClose, C);
}
/************ T1 ************/
// 1T 음봉 후 2T 이상 양봉
If O[1] - C[1] == 0.05 AND C[0] - O[0] >= 0.1 Then {
Buy("TB1", OnClose, C);
}
// 1T 양봉 후 2T 이상 음봉
If C[1] - O[1] == 0.05 AND O[0] - C[0] >= 0.1 Then {
Sell("TS1", OnClose, C);
}
// 2T 이상 양봉 후 1T 양봉
If C[1] - O[1] >= 0.1 AND C[0] - O[0] == 0.05 Then {
Buy("2TB1", OnClose, C);
}
// 2T 이상 양봉 후 1T 음봉
If C[1] - O[1] >= 0.1 AND O[0] - C[0] == 0.05 Then {
Sell("2TS1", OnClose, C);
}
// 2T 이상 음봉 후 1T 양봉
If O[1] - C[1] >= 0.1 AND C[0] - O[0] == 0.05 Then {
Buy("2TB2", OnClose, C);
}
// 2T 이상 음봉 후 1T 음봉
If O[1] - C[1] >= 0.1 AND O[0] - C[0] == 0.05 Then {
Sell("2TS2", OnClose, C);
}
/************ 쌍봉, 쌍바닥 ************/
// 쌍봉
If (H[0] == H[2] OR H[0] == H[1]) AND C[0] < O[0] Then {
Sell("TopS1", OnClose, C);
}
// 쌍바닥
If (L[0] == L[2] OR L[0] == L[1]) AND C[0] > O[0] Then {
Buy("botB1", OnClose, C);
}
}
If (H[1] >= DHigh OR H[2] >= DHigh OR H[3] >= DHigh OR H[4] >= DHigh OR H[5] >= DHigh OR H[6] >= DHigh) AND MarketPosition == 1 Then {
/*********** Gab ***********/
// 갭상승 후 음봉
If O[0] > C[1] AND C[0] < O[0] Then {
Sell("rGabS1", OnClose, C);
}
// 갭하락 후 음봉
If C[1] > O[0] AND C[0] < O[0] Then {
Sell("rGabS2", OnClose, C);
}
/*********** T1 ***********/
// 1T 양봉 후 2T 이상 음봉
If C[1] - O[1] == 0.05 AND O[0] - C[0] >= 0.1 Then {
Sell("rTS1", OnClose, C);
}
// 2T 이상 양봉 후 1T 음봉
If C[1] - O[1] >= 0.1 AND O[0] - C[0] == 0.05 Then {
Sell("r2TS1", OnClose, C);
}
// 2T 이상 음봉 후 1T 음봉
If O[1] - C[1] >= 0.1 AND O[0] - C[0] == 0.05 Then {
Sell("r2TS2", OnClose, C);
}
/************ 쌍봉, 쌍바닥 ************/
// 쌍봉
If (H[0] == H[1] or H[0] == H[2]) AND C[0] < O[0] Then {
Sell("rTopS1", OnClose, C);
}
}
If (L[1] <= DLow OR L[2] <= DLow OR L[3] <= DLow OR L[4] <= DLow OR L[5] <= DLow OR L[6] <= DLow) AND MarketPosition == -1 Then {
/************ Gab ************/
// 갭상승 후 양봉
If O[0] > C[1] AND C[0] > O[0] Then {
Buy("rGabB1", OnClose, C);
}
// 갭하락 후 양봉
If C[1] > O[0] AND C[0] > O[0] Then {
Buy("rGabB2", OnClose, C);
}
/************ T1 ************/
// 1T 음봉 후 2T 이상 양봉
If O[1] - C[1] == 0.05 AND C[0] - O[0] >= 0.1 Then {
Buy("rTB1", OnClose, C);
}
// 2T 이상 양봉 후 1T 양봉
If C[1] - O[1] >= 0.1 AND C[0] - O[0] == 0.05 Then {
Buy("r2TB1", OnClose, C);
}
// 2T 이상 음봉 후 1T 양봉
If O[1] - C[1] >= 0.1 AND C[0] - O[0] == 0.05 Then {
Buy("r2TB2", OnClose, C);
}
// 쌍바닥
If (L[0] == L[1] or L[0] == L[2]) AND C[0] > O[0] Then {
Buy("rbotB1", OnClose, C);
}
}
//MessageLog("DHigh : %.2f, DLow : %.2f", DHigh, DLow);
// 고, 저가 저장
If H > DHigh Then {
DHigh = H;
}
If L < DLow Then {
DLow = L;
}
}
SetStopProfittarget(1.5, PointStop);
SetStopTrailing(0.7, 1.0, PointStop);
SetStopLoss(0.7, PointStop);
}
2019-10-01
220
글번호 132436
답변완료
간단한 수식작성 부탁드립니다.
안녕하세요?
간단한 수식작성 부탁드립니다.
**진입
적삼병(양봉연달아 3개) 또는 흑삼병(음봉 연달아3개) 에 진입.
**청산
1) 진입한 포지션 반대방향으로 신호발생시 청산후 청산방향으로 재진입.
2)익절(외부변수)틱, 손절(외부변수)틱
1번이나 2번중 먼저 발생하는 신호에 청산.
감사합니다.
2019-10-01
192
글번호 132435
답변완료
종목 검색식
A=ma(C,기간1);
B=ma(C,기간2);
valuewhen(1,CrossUp(A,B),A)
기간1 3
기간2 225
종목이 종가에 검색되도록 부탁드립니다
2019-10-01
215
글번호 132434
답변완료
64328 delay time 재문의
아래 수식의 결과가 나오지 않아서 64328로 문의드렸는데요
delay time을 1분으로 적용해보니 결과값이 한달에 10회~ 20회는 나오는군요
delay time을 1분
연결선물 1분차트 적용
시뮬레이션을 해보았습니다.
2019년 1월부터 10월1일까지 시뮬레이션을 하면
첨부파일 1처럼 1월과 2월에만 결과가 나옵니다.
2019년 7월부터 10월1일까지 시뮬레이션 결과는
첨부파일 2처럼 7월,8월,9월,10월 결과가 모두 나옵니다.
시뮬레이션 기간이 길면 안나오고 좁으면 나오는 것을 해결할 방법은 없는지요?
input : 당일최대진입횟수(1);
var : T1(0),entry(0);
var : BuySetup(false),SellSetup(false),Buyprice(0),SellPrice(0),BD(0),BT(0),SD(0),ST(0);
if bdate != Bdate[1] Then
T1 = TotalTrades;
if MarketPosition == 0 Then
entry = TotalTrades-T1;
Else
entry = TotalTrades-T1+1;
if MarketPosition <= 0 and BuySetup == false and dayindex == 0 and C > O Then
{
BuySetup = true;
Buyprice = C;
BD = sdate;
BT = TimeToMinutes(stime);
}
if MarketPosition >= 0 and BuySetup == false and dayindex == 0 and C < O Then
{
SellSetup = true;
SellPrice = C;
SD = sDate;
ST = TimeToMinutes(stime);
}
if MarketPosition == 1 Then
BuySetup = false;
if MarketPosition == -1 Then
SellSetup = false;
if MarketPosition <= 0 and BuySetup == true and Sdate == BD and TimeToMinutes(stime) >= BT+1 and crossup(c,BuyPrice) and entry < 당일최대진입횟수 Then
buy("b");
if MarketPosition >= 0 and SellSetup == true and Sdate == SD and TimeToMinutes(stime) >= ST+1 and CrossDown(c,SellPrice) and entry < 당일최대진입횟수 Then
sell("s");
2019-11-01
251
글번호 132433
답변완료
문의 드립니다.
키움수식인데요...
예스로 변환좀 부탁드립니다.
수식2
t1=tema(c,period1);
x=valuewhen(1,crossdown(c,t1),
highestsince(1,crossup(c,t1),t1));
수식3
t1=tema(c,period1);
y=valuewhen(1,crossup(c,,t1),
lowestsince(1,crossdown(c,t1),t1));
수식4
t1=tema(c,period1);
x=valuewhen(1,crossdown(c,t1),
highestsince(1,crossup(c,t1),t1));
수식5
t1=tema(c,period1);
y=valuewhen(1,crossup(c,,t1),
lowestsince(1,crossdown(c,t1),t1));
지표조건
period1 20
period2 10
p1 5
period3 3
이수식을 지표식으로 변환 부탁드립니다..
해당지표의 신호식도 같이좀 부탁드립니다.
매번 감사드립니다.
2019-10-01
263
글번호 132432
답변완료
문의
일봉에서 몸통보다 윗꼬리 크기가 더 크게 발생한 날들의 고가를 찾아서 사용하려면..
예를 들어 4일전에 윗꼬리가 몸통보다 크게 발생하였고 그날 고가를 오늘 현재가가 돌파하는 종목을 찾을 수 있는 수식 부탁드립니다
2019-10-01
214
글번호 132429