커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1710
글번호 230811
답변완료
수식 문의
Highest(H, BarsSinceEntry + 1) 가
20개의 봉이 지났는데도..즉 20봉안에
그 최고가가 갱신되지 않으면 청산하라
어떻게 표현하는게 좋을까요?
2021-12-16
405
글번호 154526
답변완료
문의 드립니다
1분봉상에서 테스트해볼 시스템로직입니다.
n봉 연속 음봉이 나오고, 연속 음봉의 하락폭이 k포인트(혹은 퍼센트) 이상일때 매수 진입
1포인트 이상 수익이 나면 청산, 0.5포인트 손실이 나도 청산
5분 경과시 무조건 청산
감사합니다.
2021-12-15
715
글번호 154525
답변완료
data 대체문자열
항상 신속하고 상세한 답변 주셔서 많은 도움을 받고 있습니다.
오늘도 미리 감사드립니다.
예를 들면 아래와 같이 여러 수식에서 data1을 쓰고 있는데
(data1 대신 data15 나 data25 로 지정할 수도 있습니다)
가격 = data1(C);
코드 = StrToNum(LeftStr(Data1(SymbolCode),3));
행사가 = StrToNum(RightStr(Data1(SymbolName),5));
혹시 data(n)을 특정 문자열에 지정해 두고
그 아래에서 data(n) 대신 해당 문자열을 쓸 수 있을까요?
그리고 INPUT 문을 통해서 외부 입력도 가능한 방법이 있는지요?
부탁 드립니다.
2021-12-15
565
글번호 154524
답변완료
손절시에만 재진입 수식 부탁드립니다
안녕하세요.
항상 수고가 많으십니다.
질문드립니다 -----------------------------------------------------------------------
input : stopper1(1.0);
input : stopper2(1.0);
var1 = ma(c, 20);
if dayindex > 0 and stime < 152000 then
{
if stime < 093000 then
{
if var1 > var1[1] then
{
buy("b1");
}
}
if stime >= 100000 then
{
if 이전에 손절 and var1 > var1[1] then
{
buy("b2");
}
}
}
if IsEntryName("b1") == true Then
SetStopLoss(stopper1, PointStop);
if IsEntryName("b2") == true Then
SetStopLoss(stopper2, PointStop);
if IsEntryName("b1") == true and (stime == 151900 or CrossUp(stime, 151900)) Then
{
exitlong("b1청산");
}
if IsEntryName("b2") == true and (stime == 151900 or CrossUp(stime, 151900)) Then
{
exitlong("b2청산");
}
------------------------------------------------------------------------------------
위 전략식은 진입시간을 따로 분리하여 9시 30분 이전에 조건 만족하면 진입하여,
손절이 발생하지 않으면 15시 19분에 청산하고
9시 30분 이전에 진입하여 10시 이전에 손절 발생하면,
10시 이후에는 손절됐을 경우에만 재진입하려는 의도로 작성된 식입니다.
"이전에 손절"을 수식으로 부탁드립니다.
감사합니다.
항상 좋은 일만 생기시길를 ~~
2021-12-15
546
글번호 154523
2wnwn 님에 의해서 삭제되었습니다.
2021-12-15
8
글번호 154522
답변완료
문의
늘 감사드립니다.
if문에서 한봉전 조건을 삭제해보라시는데 할 줄 몰라요ㅠ.ㅠ
도움 부탁드립니다.
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 문의
>
안녕하세요
예스스탁입니다.
소리나 팝업창 출력에 문제가 없습니다.
작성하신 수식들은 현재봉에서 3%범위에만 있으면 소리나 경고창이 발생하는 것이 아닙니다.
data2기준으로 한봉전에는 조건이 충족하지 않고 현재봉에서는 조건을 충족해야 합니다.
한봉전에는 3% 범위 밖이었다가 현재봉에서 3% 이내로 들어와야 합니다.
if문에서 한봉전 조건을 삭제해 보시기 바랍니다.
즐거운 하루되세요
> 육각수 님이 쓴 글입니다.
> 제목 : 문의
> 각 수치에서 3% 오차범위내에서 팝업과 알람이 울려야되는데
수치는 정확하게 맞는데 팝업도 알람도 안 울려서 뭐가 문제인지 모르겠어요.
₩도 다시 입력해봤지만 안 되네요.
다시 한 번 확인 부탁드려요.
1.월고월저기준가
input : 입력일(20211210),Per(3);
var : 기준가(0,Data2),월고(0,Data2),월저(0,Data2);
var : cond1(False,Data2),cond2(False,Data2),cond3(False,Data2);
if data2(sdate == 입력일) Then
기준가 = data2(lowD(0));
if data2(sdate >= 입력일) Then
{
if Data2(월고 == 0 or (월고 > 0 and H > 월고)) Then
월고 = data2(h);
if data2(월저 == 0 or (월저 > 0 and L < 월저)) Then
월저 = data2(l);
}
if 기준가 > 0 Then
Plot1(기준가);
if 월고 > 0 Then
Plot2(월고);
if 월저 > 0 Then
Plot3(월저);
Cond1 = Data2(C<=기준가*(1+Per/100) and C >= 기준가*(1-Per/100));
Cond2 = Data2(C<=월고*(1+Per/100) and C >= 월고*(1-Per/100));
Cond3 = Data2(C<=월저*(1+Per/100) and C >= 월저*(1-Per/100));
if cond1 == true and cond1[1] == False Then
{
PlaySound("C:₩예스트레이더₩data₩Sound₩accept.wav");
Alert("Cond1 조건충족");
}
if cond2 == true and cond2[1] == False Then
{
PlaySound("C:₩예스트레이더₩data₩Sound₩accept.wav");
Alert("Cond2 조건충족");
}
if cond3 == true and cond3[1] == False Then
{
PlaySound("C:₩예스트레이더₩data₩Sound₩accept.wav");
Alert("Cond3 조건충족");
}
2 특정일저가
input : 날짜(20211210),Per1(3);
var : D2L(0,data2),scond1(False,Data2);
if data2(sdate == 날짜) Then
{
D2L = data2(LowD(0));
}
plot1(D2L);
scond1 = Data2(C) <= D2L*(1+Per1/100) and Data2(C) >= D2L*(1-Per1/100);
if scond1 == true and scond1[1] == true Then
{
PlaySound("C:₩예스트레이더₩data₩Sound₩accept.wav");
Alert("scond1 조건충족");
}
2021-12-15
699
글번호 154521
답변완료
수식
안녕하세요. 항상 감사드립니다.
옵션 교차챠트를 만들어 보았습니다.
우측 현재가격을 콜은 빨강 / 풋은 파랑으로 보고 싶습니다.
콜은 빨강색 / 풋은 파랑으로 설정할수 있는 수식 부탁드립니다.
감사합니다.
2021-12-15
928
글번호 154516
답변완료
수고하십니다
수고하십니다.
혹시 이런것도 가능한지 여쭤봅니다.
현재봉 저가가 몆번째 앞봉에서 고가와 저가 사이에 포함되는지 알수 있나요?
2021-12-15
762
글번호 154514
답변완료
지표 질문입니다
1. 전일과 분리되어 당일부터 시작되는 종가 파라볼릭차트에서
파라볼릭이 상승에서 하락으로 바뀌면
직전 파라볼릭 하락 구간에서 천정(H1)과 바닥(L1) 사이 하락 폭(=H1-L1)과 반등폭(=H2-L1)을
현재 파라볼릭 하락 구간 고가(H2)와 저가(L2)에 적용시킨다
L=H2-(H1-L1)
H=L2+(H2-L1)
파라볼릭이 하락에서 상승으로 바뀌면 그 반대로 적용한다
L=H2-(H1-L2)
H=L2+(H1-L1)
2. 전일과 연결되어 진행되는 종가 파라볼릭차트에서
파라볼릭이 상승에서 하락으로 바뀌면
직전 파라볼릭 하락 구간에서 천정(H1)과 바닥(L1) 사이 하락 폭(=H1-L1)과 반등폭(=H2-L1)을
현재 파라볼릭 하락 구간 고가(H2)와 저가(L2)에 적용시킨다
L=H2-(H1-L1)
H=L2+(H2-L1)
파라볼릭이 하락에서 상승으로 바뀌면 그 반대로 적용한다
L=H2-(H1-L2)
H=L2+(H1-L1)
2021-12-15
841
글번호 154512