커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1655
글번호 230811
답변완료
지표 수식 요청 드립니다.
* 항상 많은 도움에 고맙 습니다.
(질문) 수익율 및 수평선 좀 부탁 드립니다.
var1 = ma)c,5) ;
Var2 = ma(c,20)
if CrossUp(var1, Var2) Then Buy() ;
if CrossDown(var1,Var2) Then Sell();
일경우 수익율 표현 좀 부탁 드립니다.
즉 진입후 매수 봉을 기준으로 c[1] 까지 수평으로 한줄 긋고
수익틱수 및 수익율 표현 좀 부탁 드립니다.
* 수익틱수 = 매수진입 일 경우 = c[1] - 진입가
매도진입 일 경우 = 진입가 - c[1]
*수익비 = 최대수익 / 최대손실
* 고맙습니다 좋은 하루 되십시요.
2021-08-30
1233
글번호 151828
답변완료
수식 부탁드립니다
첨부한 사진의 화살표에 매수신호가 나오게 하고 싶은데요
수정 부탁드립니다
(60>240, 20선은 60-240선 사이에 있을때 60선을 크로스하거나 60선위 양봉일때 매수)
var1 = ma(c,5);
var2 = ma(c,20);
var3 = ma(c,60);
var4 = ma(c,120);
var5 = ma(c,240);
If var2 < var3
AND var3>var5 and VAR2 > VAR5
And ((CrossUp(C,Var3)) OR (Open >= Var3))
AND C>O AND O>Var2
Then
buy("C");
2021-08-27
1131
글번호 151827
답변완료
수식 수정 부탁드립니다
아래 수식에서 var2<var3 조건이 있는데도, 반대로ㅍvar2>var3인
조건에서도 신호가 나오는데요 수정부탁드립낟
var1 = ma(c,5);
var2 = ma(c,20);
var3 = ma(c,60);
var4 = ma(c,120);
var5 = ma(c,240);
var6 = (C[1]+C[2]+C[3]+C[4])/4;
var7 = max(C,O)-abs(C-O)*(2/3);
var8 = min(C,O)+abs(C-O)*(2/3);
## ADX수식조건
input : Period(14);
var : AX(0),DP(0),DM(0);
Ax = ADX(Period);
DP = Diplus(Period);
DM = DiMinus(Period);
If var2 < var3
AND var3>var5 and VAR2 > VAR5 and Var3>Var2
//AND VAR1>Var2
And ((CrossUp(var7,Var3)) OR (Open >= Var3))
// and CrossUp(c,var2)
AND C>O
AND DP>DM
Then
buy("C");
if MarketPosition == 1 and
IsEntryName("C") and
EntryPrice > MA(Close, 60)[BarsSinceEntry]
And ((Crossdown(var8,Var3)) OR (Crossdown(var8,Var2)OR (Open <= Var3)))
AND C<O
Then
exitlong("C청산");
2021-08-27
1373
글번호 151826
답변완료
수정 의뢰 드립니다!
안녕하세요!
아래는 지난번에 만들어 주신 수식인데 녹색파동선이 매매하는데 불편해서 추세선 삭제를 부탁드립니다! 감사합니다!
Input:length(10),종가사용여부(0),파동선두께(2),수치표시(1);
Var:j(0),jj(0),HH(0),LL(0),최종고가(0),최종저가(0),최종꼭지점(""),처리구분(""),
TL1(0),Text1(0),text2(0),TL2(0);
Array:고[10,4](0),저[10,4](0); // 1:가격,2:Index,3:sDate,4:sTime
#==========================================#
HH = IFF(종가사용여부==1,C,H);
LL = IFF(종가사용여부==1,C,L);
If Index == 0 Then
{
고[1,1] = HH;
저[1,1] = LL;
}
Condition1 = Highest(HH,length) == HH and 최종고가 <> HH;
Condition2 = Lowest (LL,length) == LL and 최종저가 <> LL;
처리구분 = "";
If Condition1 and Condition2 Then // 기간고점과 기간저점 동시 발생
{
If 최종꼭지점 == "저점" Then
{
If 저[1,1] > LL Then 처리구분 = "저점처리";
Else 처리구분 = "고점처리";
}
Else If 최종꼭지점 == "고점" Then
{
If 고[1,1] < HH Then 처리구분 = "고점처리";
Else 처리구분 = "저점처리";
}
}
Else If Condition1 Then 처리구분 = "고점처리";
Else If Condition2 Then 처리구분 = "저점처리";
#==========================================#
If 처리구분 == "고점처리" Then
{
최종고가 = HH; // 신규고점을 체크하기 위해 저장
If 최종꼭지점 == "저점" Then
{
For j = 10 DownTo 2
{
For jj = 1 To 4
{
고[j,jj] = 고[j-1,jj];
}
}
고[1,1] = HH;
고[1,2] = Index;
고[1,3] = sDate;
고[1,4] = sTime;
TL1 = TL_New(저[1,3],저[1,4],저[1,1],고[1,3],고[1,4],고[1,1]);
var1 = 고[2,1]-저[1,1];
TL2 = TL_New(저[1,3],저[1,4],저[1,1]-var1,sDate,sTime,저[1,1]-var1);
If 수치표시 == 1 Then
{
Text1 = Text_New(고[1,3],고[1,4],고[1,1],NumToStr(고[1,1],2));
Text_SetStyle(Text1, 2, 1);
Text2 = Text_New(고[1,3],고[1,4],고[1,1],NumToStr(고[1,1]-저[1,1],2)+NewLine);
Text_SetStyle(Text2, 2, 1);
Text_SetColor(text2,RED);
}
TL_SetSize(TL1,파동선두께);
TL_SetColor(TL1,GREEN);
TL_SetSize(TL2,파동선두께);
TL_SetColor(TL2,BLUE);
}
Else If 고[1,1] < HH Then // 1번 고점보다 높은 고가 출현
{
고[1,1] = HH;
고[1,2] = Index;
고[1,3] = sDate;
고[1,4] = sTime;
TL_SetEnd(TL1,고[1,3],고[1,4],고[1,1]);
TL_SetEnd(TL2,고[1,3],고[1,4],저[1,1]-var1);
// 시작점은 변동없고 끝점의 위치가 현재 봉으로 연장된 것임
If 수치표시 == 1 Then
{
Text_SetLocation(Text1,고[1,3],고[1,4],고[1,1]);
Text_SetString(Text1,NumToStr(고[1,1],2));
Text_SetLocation(Text2,고[1,3],고[1,4],고[1,1]);
Text_SetString(Text2,NumToStr(고[1,1]-저[1,1],2)+NewLine);
}
}
최종꼭지점 = "고점";
}
#==========================================#
If 처리구분 == "저점처리" Then
{
최종저가 = LL;
If 최종꼭지점 == "고점" then
{
For j = 10 DownTo 2
{
For jj = 1 To 4
{
저[j,jj] = 저[j-1,jj];
}
}
저[1,1] = LL;
저[1,2] = Index;
저[1,3] = sDate;
저[1,4] = sTime;
TL1 = TL_New(고[1,3],고[1,4],고[1,1],저[1,3],저[1,4],저[1,1]);
var1 = 고[1,1]-저[2,1];
TL2 = TL_New(고[1,3],고[1,4],고[1,1]+var1,sDate,sTime,고[1,1]+var1);
If 수치표시 == 1 Then
{
Text1 = Text_New(저[1,3],저[1,4],저[1,1],NumToStr(저[1,1],2));
Text_SetStyle(Text1, 2, 0);
Text2 = Text_New(저[1,3],저[1,4],저[1,1],NewLine+NumToStr(저[1,1]-고[1,1],2));
Text_SetStyle(Text2, 2, 0);
Text_SetColor(text2,RED);
}
TL_SetSize(TL1,파동선두께);
TL_SetColor(TL1,GREEN);
TL_SetSize(TL2,파동선두께);
TL_SetColor(TL2,RED);
}
Else If 저[1,1] > LL then
{
저[1,1] = LL;
저[1,2] = Index;
저[1,3] = sDate;
저[1,4] = sTime;
TL_SetEnd(TL1,저[1,3],저[1,4],저[1,1]);
TL_SetEnd(TL2,저[1,3],저[1,4],고[1,1]+var1);
If 수치표시 == 1 Then
{
Text_SetLocation(Text1,저[1,3],저[1,4],저[1,1]);
Text_SetString(Text1,NumToStr(저[1,1],2));
Text_SetLocation(Text2,저[1,3],저[1,4],저[1,1]);
Text_SetString(Text2,NewLine+NumToStr(저[1,1]-고[1,1],2));
}
}
최종꼭지점 = "저점";
}
2021-08-30
1473
글번호 151825
답변완료
부탁 드립니다.
변환부탁 드립니다.
2021-08-27
1315
글번호 151824
답변완료
지표 문의드립니다.
우선 항상 감사드려요.
조건1. 30분봉 기준으로 "양봉,음봉,양봉"=양음양 패턴 또는 "음봉,양봉,음봉" 음양음패턴이 등장합니다.
조건2. 첫번째 양음양 패턴일때 첫번째양봉 < 두번째음봉 < 세번째양봉이 될경우 두번째 음봉 캔들에 몸통 50%절반에 줄을 긋고 싶습니다. 반대로 음양음 패턴일떄는 첫번째 음봉 < 두번째양봉 < 세번째음봉 이런식으로 되며 마찬가지로 두번째 양봉 몸통 절반에 선을 그어지게하고 싶습니다.
감사합니다.
2021-08-27
1478
글번호 151823
답변완료
지표 수치 표시
안녕하세요?
지표가 표시될 때, 오른쪽에 보면
값이 1, 2, 3 이면 되는데,
1.00000, 2.00000, 3.00000 이런 식으로 나와서 헷갈립니다.
이걸 예컨대 소숫점 이하 1자리까지만 표시하게 할 수 있나요?
또, -2.00000 이라고 나와 있어서 그렇게 믿었는데, 자세히 보니까 아래에 *10 이 되어서
사실은 -20 이었습니다.
이런거 괜히 정신 헷갈리게 하지 않고, -20, -21 등으로 표시하게 할 수 있는 방법이 있나요?
감사합니다.
2021-08-27
1302
글번호 151822
답변완료
검색식 문의드립니다
조건 당일 현재 가격이 일목균형표 선행스팬1 보다 클경우
그리고 당일 현재가격이 25일전 일목균형표 선행스팬1보다 클경우
그리고 당일 현재가격이 8일전 (9일 가격중에서 가장고가임)가격과 비교해서 고가일경우
그리고(또는) 당일 현재가격이 25일전 (26일 가격중에서 가장고가임)가격과 비교해서 고가일경우
2021-08-27
1040
글번호 151821
답변완료
고가저가 돌파지표
안녕하세요?
먼저 감사의 인사를 올립니다.
제가 만들고 싶은 지표는 아래와 같습니다.
오늘 시가가 전일고가를 돌파하거나 전일저가를 돌파한경우 차트에 지표를 출력하고 싶습니다.
1 전일고점 돌파 시가가 출발한 경우
dayclose(1) < dayopen() then
plot1 = "반락매수"
2 전일저점 돌파 시가가 출발한 경우
dayclose(1) > dayopen() then
plot2 = "반락매수"
1번과 2번의 조건에 따라 차트에 출력될수 있도록 부탁드립니다
2021-08-27
977
글번호 151820