커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
8107
글번호 230811
답변완료
전환비율 data2
Input:전환비율(6);
Var : j(0,Data2),jj(0,Data2),HH(0,Data2),LL(0,Data2),hiBar(0,Data2),loBar(0,Data2),최종꼭지점("",Data2),처리구분("",Data2);
var : TL1(0,Data2),Box(0,Data2);
var : cond1(False,Data2),cond2(False,Data2);
Array:고[10,4](0,Data2),저[10,4](0,Data2);
HH=data2(H);
LL=data2(L);
If data2(Index==0) Then
{
고[1,1]=HH;
고[1,2]=0;
고[1,3]=data2(sDate);
고[1,4]=data2(sTime);
저[1,1]=LL;
저[1,2]=0;
저[1,3]=data2(sDate);
저[1,4]=data2(sTime);
}
If data2(Index>0) Then
{
hiBar=hiBar+1;
loBar=loBar+1;
}
If HH[hiBar]<HH Then hiBar=0;
If LL[loBar]>LL Then loBar=0;
cond1=저[1,1]*(1+(전환비율/100))<HH and hiBar==0;
cond2=고[1,1]*(1-(전환비율/100))>LL and loBar==0;
처리구분="";
If cond1 and cond2 Then//고점과저점조건동시만족
{
If 최종꼭지점=="저점" Then
{
If 저[1,1]>LL Then 처리구분="저점처리";
Else 처리구분="고점처리";
}
Else If 최종꼭지점=="고점" Then
{
If 고[1,1]<HH Then 처리구분="고점처리";
Else 처리구분="저점처리";
}
}
Else If cond1 Then 처리구분="고점처리";
Else If cond2 Then 처리구분="저점처리";
If 처리구분=="고점처리" Then
{
If 최종꼭지점=="저점" Then
{
For j=10 DownTo 2
{
For jj=1 To 4
{
고[j,jj]=고[j-1,jj];
}
}
고[1,1]=HH[hiBar];
고[1,2]=data2(Index)-hiBar;
고[1,3]=data2(sDate[hiBar]);
고[1,4]=data2(sTime[hiBar]);
hiBar=-1;
loBar=-1;
TL1=TL_New_Self(저[1,3],저[1,4],저[1,1],고[1,3],고[1,4],고[1,1]);
TL_SetSize(TL1,1);
TL_SetColor(TL1,RED);
Box_Delete(Box);
box=box_New_self(저[1,3],저[1,4],저[1,1],Data2(NextBarSdate),Data2(NextBarStime),고[1,1]);
box_SetColor(Box,RED);
Box_SetFill(Box,true);
}
Else If 고[1,1]<HH[hiBar] Then//1번고점보다높은고가출현
{
고[1,1]=HH[hiBar];
고[1,2]=data2(Index)-hiBar;
고[1,3]=data2(sDate[hiBar]);
고[1,4]=data2(sTime[hiBar]);
hiBar=-1;
loBar=-1;
TL_SetEnd(TL1,고[1,3],고[1,4],고[1,1]);
Box_SetEnd(Box,고[1,3],고[1,4],고[1,1]);
}
최종꼭지점="고점";
Plot1(고[1,1]);
NoPlot(2);
}
If 처리구분=="저점처리" Then
{
If 최종꼭지점=="고점" Then
{
For j=10 DownTo 2
{
For jj=1 To 4
{
저[j,jj]=저[j-1,jj];
}
}
저[1,1]=LL[loBar];
저[1,2]=data2(Index)-loBar;
저[1,3]=data2(sDate[loBar]);
저[1,4]=data2(sTime[loBar]);
hiBar=-1;
loBar=-1;
TL1=TL_New_Self(고[1,3],고[1,4],고[1,1],저[1,3],저[1,4],저[1,1]);
TL_SetSize(TL1,1);
TL_SetColor(TL1,BLUE);
Box_Delete(Box);
box=box_New_self(저[1,3],저[1,4],저[1,1],Data2(NextBarSdate),Data2(NextBarStime),고[1,1]);
box_SetColor(Box,Blue);
Box_SetFill(Box,true);
}
Else If 저[1,1]>LL[loBar] Then
{
저[1,1]=LL[loBar];
저[1,2]=data2(Index)-loBar;
저[1,3]=data2(sDate[loBar]);
저[1,4]=data2(sTime[loBar]);
hiBar=-1;
loBar=-1;
TL_SetEnd(TL1,저[1,3],저[1,4],저[1,1]);
Box_SetEnd(Box,저[1,3],저[1,4],저[1,1]);
}
최종꼭지점="저점";
Plot2(저[1,1]);
NoPlot(1);
}
박스 생성이 안되기도하고, 박스 크기도 일부 작고, 삭제도 몇군데 안됩니다.
오류 부분에서는 추세선도 이상합니다. 하락박스의 시작점에서 저를 고로 바꾸니 약간 수정되나 비슷합니다. 오류 수정 부탁드립니다.
2023-12-19
1346
글번호 174968
답변완료
문의 드립니다.
20이평 120이평 정배열이고 주가가 20이평을 아래서 위로 돌파하는 경우와
주가가 20이평 위에 있을 때 음봉에서 양봉 발생 시 매수
청산은 음봉 발생할 때 매도 청산 완료
20이평 120이평 역배열이고 주가가 20이평을 위에서 아래로 돌파하는 경우와
주가가 20이평 아래 있을 때 양봉에서 음봉 발생 시 매도
청산은 양봉 발생할 때 매수 청산 완료
부탁드립니다.
2023-12-18
889
글번호 174966
철판때기 님에 의해서 삭제되었습니다.
2023-12-18
60
글번호 174946
답변완료
수식 요청
input : Price(31850),진입횟수(1);
var : entry(0);
if Bdate != Bdate[1] Then
entry = 0;
if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or
(MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then
entry = entry+1;
if NextBarSdate == sDate and
NextBarStime >= 91500 and
H < price and
entry < 진입횟수 Then
Buy("b",AtStop,price);
9시 15분 이후에 지정한 가격(위 식에서는 31,850원)보다 현재가가 높더라도 // 가령 9시 20분에 현재가가 지정한 가격(31,850원)을 하회하여 31,800원이 되었다가 다시 31,850원을 돌파하는 시점에도 매수가 이뤄질 수 있도록 위 수식에 추가를 요청드립니다. 노고에 감사드립니다.
2023-12-18
1274
글번호 174944
답변완료
문의드립니다
A=Avg(C, 이평1);
B=Avg(C, 이평2);
ValueWhen(1, A(1) > B(1) and A <= B, Avg(C,이평2))
이평1: 20
이평2: 60
위 선을 당일 돌파하는 종목검색을 하고 싶습니다
부탁드립니다
2023-12-18
1823
글번호 174941
답변완료
지표식 하나 부탁 드립니다.
안녕하세요
지표식 1개 부탁 드리겠습니다.
1.볼린져밴드 Period : 50 , MultiD : 3
2.단순이동평균선 60
볼린져밴드는 상단선(60,3)만 이용을 하고, 단순이동평균선은 60 을 이용해서
볼린져 밴드가 이동평균선을 상향 돌파하면은 볼린져밴드 선의 색깔이 빨갛게 하고
볼린져 밴드가 이동평균선을 하향 돌파하면은 볼린져밴드 선의 색깔이 파랗게 하는
지표식 부탁 드리겠습니다.
항상 감사드립니다.
2023-12-18
1079
글번호 174939
답변완료
수식 문의 드립니다
안녕하세요
다음 가격을 차트상 표시하게 해주세요.
ex)
월봉시가와 피봇 1차지지, 저항선의 1/3 과 1/2
2023-12-18
1036
글번호 174933
답변완료
수식문의 드립니다.
안녕하세요.
아래는 차트 설명입니다.
=================================================================================
양봉의 거래량은 양수, 음봉의 거래량은 음수로 표시된다고 가정하고,
파란색 세로선)
전일 거래량은 포함하지 않은 당일 발생된 봉만 기준으로,
장시작 후 첫째봉을 제외한 최근 20봉 거래량 합이 +1000을 돌파할 때
하늘색 동그라미)
파란색 세로줄이 발생후, 가격상 고점을 갱신하다가,
'처음'으로 2봉연속 고점을 갱신하지 못하고 눌릴때 2봉전의 고점.
검정색 가로선)
하늘색 동그라미봉의 고가라인선.
==================================================================================
지표1)
장시작 후 발생되는 검정색 가로선을 표시하되,
이후에 발생되는 검정색 가로선은 앞서 발생 된 가로선들의 가격보다 저점이 갱신될때만 표시할 것.
감사합니다~
2023-12-18
1119
글번호 174932
답변완료
문의
베이시스를 이용한 수식입니다.
입력한 시간동안 발생한 봉의 갯수를 세고 베이시스 최빈값 (m1)을 구합니다.
최빈값을 상승 돌파하면 buy
ex) 094500 ~ 104500 1분봉이며 60개를 모두 세고 최빈값을 구합니다.
진입이후 발생한 봉의 갯수를 세고 베이시스 최빈값(m2)을 구합니다.
최빈값을 하락 돌파하면 exitlong
아래 수식을 완성하여 주십시요.
항상 감사합니다.
**********************************************************************************************
input : 진입시간1(094500), 진입시간2(104500);
input : 청산봉수(30);
input : ba(0,data1), m1(0,data1), m2(0,data1);
ba=data2(c)-data3(c);
if 진입시간1 and 진입시간2 and ba>m1 then
buy("b");
if 청산봉수 and ba<m2 then
exitlong("x");
2023-12-18
1413
글번호 174930