커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
3650
글번호 230811
아싸가오리 님에 의해서 삭제되었습니다.
2020-10-19
0
글번호 143198
답변완료
수식문의드립니다.
120봉내 신고점을 찍었다면, 신고점 이후 5봉이내에서는 매수 진입을 못하게 하고 싶습니다.
수식 좀 부탁드립니다.
2020-10-19
663
글번호 143192
답변완료
함수요청
안녕하세요?
아래 전략에 대해 스크립트 작성 요청드립니다.
나스닥 선물 1분봉으로 거래를 하고자 합니다.
(시초가 매수를 해야 하기 때문에 가장 짧은 분봉으로 거래를 하겠습니다.)
- 매수: 일봉상 음봉이 연속으로 다섯개 이상 발생 이후 첫 양봉 발생시 완성봉 시가봉으로 집입
- 매도: 일봉상 양봉이 연속으로 다섯개 이상 발생 이후 첫 음봉 발생시 완성봉 시가봉으로 집입
- 매수청산: 매수포지션 진입 이후 진입신호를 생성한 다섯개 이상의 연속 음봉 이후 첫 발생 양봉의 저가 이탈 완성 이후 익봉 시가에 청산
- 매도청산: 매도포지션 진입 이후 진입신호를 생성한 다섯개 이상의 연속 양봉 이후 첫 발생 음봉의 고가 돌파 완성 이후 익봉 시가에 청산
- 강제청산: 진입 이후 진입신호가 유지되어 포지션이 있을 경우 76개봉째는 강제청산
2020-10-19
768
글번호 143191
답변완료
수식 문의드립니다.
당일 1분봉으로 10억 이상 거래량이 두 번 발생한 종목을 검색하고자 합니다.
아래와 같이 검색을 하면 10억 이상 거래된 봉이 2개 이상인 종목들도 함께 검색이 되는데, 어느 부분을 수정하면 될까요?
if sDate != sDate[1] Then
var1 = 0;
if M > 1000000000 Then
var1 = var1 + 1;
if var1 == 2 Then
Find(var1);
2020-10-19
662
글번호 143189
답변완료
수정 부탁드립니다.
안녕하세요?
수정하고 싶은 부분이 있어 문의 드립니다.
아래수식의 진입은 현재,
정배열에서 음봉에 매도(진입음봉 몸통길이 틱수 변수)
역배열에서 양봉에 매수(진입양봉 몸통길이 틱수 변수)
이것을 다음과 같이 수정하고 싶습니다.
정배열에서 양봉+음봉+음봉 (진입음봉 몸통길이 틱수 변수) 이 연달아 나올시 매도.
역배열에서 음봉+양봉+양봉 (진입양봉 몸통길이 틱수 변수) 이 연달아 나올시 매수.
부탁드립니다.
감사합니다.
input : P1(5),P2(20),n(3),양봉틱수(3),음봉틱수(3);
var : entry(0);
if Bdate != Bdate[1] Then
entry = 0;
var1 = ma(C,P1);
var2 = ma(C,P2);
if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or
(MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then
entry = entry+1;
if entry < n Then
{
if MarketPosition == 0
and C == O+양봉틱수*PriceScale and var1 < Var2 then
Buy();
if MarketPosition == 0
and C == O-음봉틱수*PriceScale and var1 > Var2 then
Sell();
}
input : 익절틱수(50),손절틱수(50);
SetStopProfittarget(PriceScale*익절틱수,PointStop);
SetStopLoss(PriceScale*손절틱수,PointStop);
2020-10-19
598
글번호 143186
답변완료
변환 문의
안녕하세요?
항상 감사드립니다.
분봉의 시스템에서 주봉의 Aroon과 MACD 변환 부탁드립니다.
다른건 코딩할만한데 타주기값만 스스로 해보면 잘 안되네요.
data2 로 검증하기가 너무 어렵습니다.
##MACD
분봉에서 주봉값 변환 부탁드립니다.
Input : shortPeriod(12), longPeriod(26), Period(9);
Var : value(0) , macdosc(0) ;
value = MACD(shortPeriod, longPeriod);
valu2 = ema(value,Period);
##AROON
아룬은 지난번에 일봉값으로 해주셨는데요. WeekLow 이런 값은 없을까요..
주봉값 변환 부탁드립니다.
input : PeriodAR(10);
var : cnt(0), Lowval(0), Highval(0);
var : DownVel(0),UpVel(0), DnAroon(0),UpAroon(0) ;
Lowval = DayLow;
Highval = DayHigh;
for cnt = 0 to PeriodAR{
if DayLow(cnt) < LowVal Then
LowVal = DayLow(cnt);
if DayHigh(cnt) > Highval Then
Highval = DayHigh(cnt);
}
For cnt= 0 To PeriodAR {
If dayLow(cnt) == Lowval Then
DownVel = cnt;
If DayHigh(cnt) == highval Then
UpVel = cnt;
}
DnAroon = 100*(PeriodAR-DownVel)/PeriodAR;
UpAroon = 100*(PeriodAR-UpVel)/PeriodAR;
2020-10-18
730
글번호 143185
답변완료
수식작성 부탁드립니다.
안녕하세요. 운영자님.
제가 이번에 부탁드릴 내용은,
아래는 Price Channel 을 육안상으로 보기 편하게 만들어진 수식입니다.
INPUT : LENGTH(17);
VAR : TCHAN1(0), BCHAN1(0), TCHAN2(0), BCHAN2(0);
TCHAN1 = HIGHEST(HIGH+PriceScale*10, LENGTH)[0];
TCHAN2 = HIGHEST(HIGH+PriceScale*10, LENGTH)[0];
BCHAN1 = LOWEST(LOW-PriceScale*10, LENGTH)[0];
BCHAN2 = LOWEST(LOW-PriceScale*10, LENGTH)[0];
PLOT1(TCHAN1, "TOP1");
PLOT2(TCHAN1-PriceScale*20, "TOP2");
PLOT3(BCHAN1, "BOT2");
PLOT4(BCHAN1+PriceScale*20, "BOT1");
PLOT5((TCHAN1+BCHAN1)/2, "중심선");
위의 수식에서
매수/청산조건:
PLOT1/PLOT2 이 우하향으로 내려오다가 상향반전하고, 현재 캔들이 5일선 밑 / 20일선이 상향 중일때 양봉에서 2계약 매수하고,손절은 X틱, 익절은 1계약은 Y틱, 나머지 1계약은 PLOT3/PLOT4 이 하향반전 또는 매수가격 터치 시 청산
매도/청산조건:
PLOT3/PLOT4 이 우상향으로 올라가다가 하향반전하고, 현재 캔들이 5일선 밑 / 20일선이 하향 중일때 음봉에서 2계약 매도하고,손절은 X틱, 익절은 1계약은 Y틱, 나머지 1계약은 PLOT1/PLOT2 이 상향반전 또는 매도가격 터치 시 청산
감사합니다.
2020-10-18
830
글번호 143184
답변완료
문의
1)은 buy 수식
2)는 sell 수식입니다.
서로 반대 개념이며, 진입수식에는 문제가 없습니다.
sell수식으로 buy 수식의 exitlong 수식을 작성했고
buy 수식으로 sell 수식의 exitshot 수식을 작성했는데...시뮬레이션 결과에 변화가 없습니다.
exit 수식 살펴주세요.
**************************************************************************************
1) buy 수식
Input : up(3000),out(4000);
input : 시간1(090000),시간2(143000);
var : C2(0,data2),entry(false,data2);
C2 = data2(C);
if data2(Bdate != Bdate[1]) Then
entry = false;
if data2(stime >= 시간1 and stime < 시간2) then{
if entry == false and data2(Bdate == Bdate[1] and HighD(0) > HighD(0)[1] and HighD(0)-LowD(0) >= up) Then{
entry = true;
buy("");
}
}
if MarketPosition == 1 Then
{
if entry == false and data2(Bdate == Bdate[1] and Lowd(0) < LowD(0)[1] and HighD(0)-LowD(0) >= out) Then{
entry = true;
ExitLong("");
}
}
2) sell 수식
Input : dn(3000),out(4000);
input : 시간1(090000),시간2(143000);
var : C2(0,data2),entry(false,data2);
C2 = data2(C);
if data2(Bdate != Bdate[1]) Then
entry = false;
if data2(stime >= 시간1 and stime < 시간2) then{
if entry == false and data2(Bdate == Bdate[1] and Lowd(0) < LowD(0)[1] and HighD(0)-LowD(0) >= dn) Then{
entry = true;
sell("");
}
}
if MarketPosition == -1 Then
{
if entry == false and data2(Bdate == Bdate[1] and HighD(0) > HighD(0)[1] and HighD(0)-LowD(0) >= out) Then{
entry = true;
ExitShort("");
}
}
2020-10-19
819
글번호 143183
답변완료
FixPlotShirt가 작동되지 않습니다. 어떻게 해야하나요?
SwingHigh와 SwingLow를 찾아서
그 해당봉에 대한 BarIndex를 그 해당봉위치에 표현하려고 하는데
FixPlotShift함수를 써도 위치가 변하지 않습니다.
참고로 예스랭귀지 Edit창에서 FixPlotShift가 빨간색으로 표현되지 않고 있습니다.
Input : Strength(9);
Variables : shb(0), slb(0);
If BarIndex >= 2*Strength Then
{
shb = SwingHighBar(1, High, Strength, Strength, 2*Strength + 1);
slb = SwingLowBar(1, Low, Strength, Strength, 2*Strength + 1);
If (shb != -1 ) || (slb != -1) Then
{
Plot1(BarIndex-Strength);
FixPlotShift(1, -9);
}
}
2020-10-18
805
글번호 143182