커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
8132
글번호 230811
답변완료
시스템 수식 부탁드립니다.
Input:전환비율(5);
Var : j(0),jj(0),HH(0),LL(0),hiBar(0),loBar(0),최종꼭지점(""),처리구분("");
var : TL1(0),Text1(0),ADXV1(0),tl2(0),tl3(0),tx2(0),tx3(0);
Array:고[10,4](0),저[10,4](0);
HH = H;
LL = L;
If Index == 0 Then
{
고[1,1] = HH;
고[1,2] = 0;
고[1,3] = sDate;
고[1,4] = sTime;
저[1,1] = LL;
저[1,2] = 0;
저[1,3] = sDate;
저[1,4] = sTime;
}
If Index > 0 Then
{
hiBar = hiBar + 1;
loBar = loBar + 1;
}
If HH[hiBar] < HH Then hiBar = 0;
If LL[loBar] > LL Then loBar = 0;
Condition1 = 저[1,1] * (1 + (전환비율/100)) < HH and hiBar == 0;
Condition2 = 고[1,1] * (1 - (전환비율/100)) > LL and loBar == 0;
처리구분 = "";
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
{
If 최종꼭지점 == "저점" Then
{
TL_SetEnd(TL2,저[1,3],저[1,4],고[1,1]* (1 - (전환비율/100)) );
Text_SetLocation(TX2,저[1,3],저[1,4],고[1,1]* (1 - (전환비율/100)) );
For j = 10 DownTo 2
{
For jj = 1 To 4
{
고[j,jj] = 고[j-1,jj];
}
}
고[1,1] = HH[hiBar];
고[1,2] = Index - hiBar;
고[1,3] = sDate[hiBar];
고[1,4] = sTime[hiBar];
hiBar = -1;
loBar = -1;
TL1 = TL_New(저[1,3],저[1,4],저[1,1],고[1,3],고[1,4],고[1,1]);
TL_SetSize(TL1,1);
TL_SetColor(TL1,RED);
TL2 = TL_New(고[1,3],고[1,4],고[1,1]*(1-(전환비율/100)) ,NextBarSdate,NextBarStime,고[1,1]*(1-(전환비율/100)) );
TL_SetColor(TL2,Cyan);
TL_SetStyle(TL2,3);
Tx2 = Text_New(NextBarSdate,NextBarStime,고[1,1]*(1-(전환비율/100)),NumToStr(고[1,1]*(1-(전환비율/100)),2));
Text_SetColor(Tx2,Cyan);
}
Else If 고[1,1] < HH[hiBar] Then // 1번 고점보다 높은 고가 출현
{
고[1,1] = HH[hiBar];
고[1,2] = Index - hiBar;
고[1,3] = sDate[hiBar];
고[1,4] = sTime[hiBar];
hiBar = -1;
loBar = -1;
TL_SetEnd(TL1,고[1,3],고[1,4],고[1,1]);
TL_SetBegin(TL2,고[1,3],고[1,4],고[1,1]* (1-(전환비율/100)) );
Text_SetString(TX2,NumToStr(고[1,1]*(1-(전환비율/100)),2));
}
최종꼭지점 = "고점";
}
If 처리구분 == "저점처리" Then
{
If 최종꼭지점 == "고점" Then
{
TL_SetEnd(TL3,고[1,3],고[1,4],저[1,1]* (1 + (전환비율/100)) );
Text_SetLocation(TX3,고[1,3],고[1,4],저[1,1]* (1 + (전환비율/100)) );
For j = 10 DownTo 2
{
For jj = 1 To 4
{
저[j,jj] = 저[j-1,jj];
}
}
저[1,1] = LL[loBar];
저[1,2] = Index - loBar;
저[1,3] = sDate[loBar];
저[1,4] = sTime[loBar];
hiBar = -1;
loBar = -1;
TL1 = TL_New(고[1,3],고[1,4],고[1,1],저[1,3],저[1,4],저[1,1]);
TL_SetSize(TL1,1);
TL_SetColor(TL1,BLUE);
TL3 = TL_New(저[1,3],저[1,4],저[1,1]* (1 + (전환비율/100)) ,NextBarSdate,NextBarStime,저[1,1]* (1 + (전환비율/100)) );
TL_SetColor(TL3,Magenta);
TL_SetStyle(TL3,3);
TX3 = Text_New(NextBarSdate,NextBarStime,저[1,1]*(1+(전환비율/100)),NumToStr(저[1,1]*(1+(전환비율/100)),2));
Text_SetColor(TX3,Magenta);
}
Else If 저[1,1] > LL[loBar] Then
{
저[1,1] = LL[loBar];
저[1,2] = Index - loBar;
저[1,3] = sDate[loBar];
저[1,4] = sTime[loBar];
hiBar = -1;
loBar = -1;
TL_SetEnd(TL1,저[1,3],저[1,4],저[1,1]);
TL_SetBegin(TL3,저[1,3],저[1,4],저[1,1]* (1 + (전환비율/100)) );
Text_SetString(TX3,NumToStr(저[1,1]*(1+(전환비율/100)),2));
}
최종꼭지점 = "저점";
}
TL_SetEnd(TL2,NextBarSdate,NextBarStime,고[1,1]* (1 - (전환비율/100)) );
Text_SetLocation(TX2,NextBarSdate,NextBarStime,고[1,1]* (1 - (전환비율/100)) );
TL_SetEnd(TL3,NextBarSdate,NextBarStime,저[1,1]* (1 + (전환비율/100)) );
Text_SetLocation(TX3,NextBarSdate,NextBarStime,저[1,1]* (1 + (전환비율/100)) );
=================================================================================
만들어주신 지표 감사합니다..
이걸로 시스템 수식 부탁드립니다.
0. 매수조건 : 전환비율(분홍점선) 돌파시 매수, 파란점선 붕괴시 매도
- 종가봉 완성 전에 조건만족시 즉시 진입
1. 매매시간 09:01~익일 05:55
2. 1회 매매시 익절 21pt, 손절 33pt
3. 하루 수익 40pt 달성시 매매중지
2022-06-06
1417
글번호 159610
답변완료
수정
77392번 스토캐스틱1.2 %k선만 크로스시 매도.매수신호발생 잘 부탁드립니다
2022-06-05
1426
글번호 159609
답변완료
하이킨 아시 신호 시점
input : MaPeriod(6),MaPeriod2(2);
var : maOpen(0),maClose(0),maLow(0),maHigh(0);
var : haOpen(0),haClose(0),haLow(0),haHigh(0);
var : ExtMapBuffer5(0),ExtMapBuffer6(0),ExtMapBuffer4(0),ExtMapBuffer3(0),ExtMapBuffer2(0),ExtMapBuffer1(0);
var : ExtMapBuffer7(0),ExtMapBuffer8(0);
var : r(0),g(0),b(0),short(False),long(False);
if Index == 0 Then
{
maOpen=Open;
maClose=Close;
maLow=Low;
maHigh=High;
}
Else
{
maOpen=(maOpen[1]*(MAperiod-1)+Open)/MAPeriod;
maClose=(maClose[1]*(MAperiod-1)+Close)/MAPeriod;
maLow=(maLow[1]*(MAperiod-1)+Low)/MAPeriod;
maHigh=(maHigh[1]*(MAperiod-1)+High)/MAPeriod;
haOpen=(ExtMapBuffer5[1]+ExtMapBuffer6[1])/2;
haClose=(maOpen+maHigh+maLow+maClose)/4;
haHigh=Max(maHigh, Max(haOpen, haClose));
haLow=Min(maLow, Min(haOpen, haClose));
if (haOpen<haClose) then
{
r=0;
g=191;
b=255;
ExtMapBuffer7=haLow;
ExtMapBuffer8=haHigh;
}
else
{
r=255;
g=10;
b=0;
ExtMapBuffer7=haHigh;
ExtMapBuffer8=haLow;
}
ExtMapBuffer5=haOpen;
ExtMapBuffer6=haClose;
ExtMapBuffer1=WMA(ExtMapBuffer7,MAperiod2);
ExtMapBuffer2=WMA(ExtMapBuffer8,MAperiod2);
ExtMapBuffer3=WMA(ExtMapBuffer5,MAperiod2);
ExtMapBuffer4=WMA(ExtMapBuffer6,MAperiod2);
}
short = ExtMapBuffer7[1]>ExtMapBuffer8[1] and ExtMapBuffer7[2]<ExtMapBuffer8[2] and ExtMapBuffer7[0]>ExtMapBuffer8[0];
long = ExtMapBuffer7[1]<ExtMapBuffer8[1] and ExtMapBuffer7[2]>ExtMapBuffer8[2] and ExtMapBuffer7[0]<ExtMapBuffer8[0];
if long Then
Buy();
if short Then
Sell();
강조식 색깔이 변한후 두번째 봉에 매수 매도 신호가 오는데, 첫번째 봉에 신호가 오게 부탁드립니다.
2022-06-05
1653
글번호 159608
답변완료
문의 드립니다.
수고 많으십니다.
키움 영웅문의 검색식을 예스스탁 검색식으로 사용하고져 합니다.
주봉으로 검색 될 수 있도록 부탁드립니다.
★ 요청 검색식
1. [주] 0봉전 Bollinger Band(10,2) 종가가 상한선이상
2. 주가이평배열(4):[주] 0봉전 종가 5이평 > 10이평 > 20이평 > 60이평
3. 가격-이동평균 비교:[주] 0봉전 (종가 240)이평 < 종가
4. 가격-이동평균 비교:[주] 0봉전 (종가 480)이평 < 종가
5. [주] 0봉전 일목균형표(9,26,52) 1봉이내 선행스팬1을 주가가 골든크로스
6. [주] 0봉전 일목균형표(9,26,52) 1봉이내 선행스팬2를 주가가 골든크로스
* 요청 검색식을 1,2,3,4,5,6번 개별식으로 답변부탁드리겠습니다.
2022-06-05
1522
글번호 159607
오이도인 님에 의해서 삭제되었습니다.
2022-06-05
0
글번호 159606
답변완료
질문드립니다!
1. N분봉에서 1>=2>=3>=4>=5>=6>=7 일때의 검색식 부탁드립니다.
2. 마찬가지로 n틱차트에서 1>=2>=3>=4>=5>=6>=7 일때 검색식 부탁드립니다.
n분봉 그리고 n틱차트는 조절가능하게 만들어주세요!
늘 감사드립니다!
2022-06-05
1289
글번호 159605
답변완료
수식문의 드립니다.
키움 수식변환 요청드립니다.
변환요청1_신호수식)
매수
중심=ma(c,중심선,종류);
이평=ma(c,이평선,종류);
대칭=중심*2-이평;
이격=이평-중심;
A = 중심+이격*(비율/100);
B=중심-이격*(비율/100);
CrossUp(A, B)
매도
중심=ma(c,중심선,종류);
이평=ma(c,이평선,종류);
대칭=중심*2-이평;
이격=이평-중심;
A = 중심+이격*(비율/100);
B=중심-이격*(비율/100);
CrossDown(A, B)
지표값
중심선 60
이평선 5
종류 단순
비율 100
-------------------------------------------------------------------------------
변환요청2)
수식1
a=dayhigh()
수식2
a=(dayhigh()-daylow());
b=a*0.882;
d=daylow()+b
수식3
a=(dayhigh()-daylow());
b=a*0.746;
d=daylow()+b
수식4
a=(dayhigh()-daylow());
b=a*0.618;
d=daylow()+b
수식5
a=(dayhigh()-daylow());
b=a*0.50;
d=daylow()+b
--------------------------------------------------------------------------------
변환요청 3)
수식1)
a=(dayhigh()-daylow());
b=a*0.382;
d=daylow()+b
수식2)
a=(dayhigh()-daylow());
b=a*0.236;
d=daylow()+b
수식3)
a=(dayhigh()-daylow());
b=a*0.118;
d=daylow()+b
수식4)
a=daylow()
키움수식을 예스수식으로 부탁드리겠습니다!
수고하세요!
2022-06-04
1636
글번호 159604
답변완료
문의드립니다.
[ 매수 매도 관련 시스템식 문의건 ]
[매수]
① 1분봉에서 1일이평선이 5일이평선 골든크로스 매수
[매도]
② 1분봉에서 1일이평선이 5일이평선 데드크로스 매도
상기 조건으로 시스템식으로 수식 부탁드립니다.
검색된 종목을 검증하는 방법도 문의드립니다.
감사합니다.
2022-06-04
1253
글번호 159603
답변완료
지표수정부탁드립니다
안녕하세요
항상 감사한 마음으로 잘사용 하고 있습니다
아래수식을 Trix 지표로 가능하면 수정 부탁드립니다
수고하세요
input : FastLen(30),SlowLen(90),Length(20),Stdv(1.1),굵기(1);
var : bbmacd(0),avgv(0),sdev(0),r(0),b(0),UpperBand(0),LowerBand(0);
var : tx(0),t(0),tl1(0),TL2(0);
bbMacd = ma(c,FastLen)-ma(c,SlowLen);
avgv = ma(bbmacd,Length);
sDev = std(bbMacd,Length);
UpperBand = avgv+(StDv*sDev);
LowerBand = avgv-(StDv*sDev);
if bbMacd > bbMacd[10] then
{
r=255;
b=0;
t = 1;
}
else
{
r=0;
b=255;
t = -1;
}
plot1(UpperBand,"UpperBand",RGB(0,0,255));
plot2(LowerBand,"LowerBand",RGB(255,0,0));
tx = Text_New_Self(sdate,stime,bbMacd,"●");
Text_SetColor(tx,rgb(r,0,b));
Text_SetStyle(tx,2,2);
if T != T[1] then
{
TL1 = TL_New_Self(sDate,sTime,-999,sDate,sTime,99999);
TL2 = TL_New(sDate,sTime,0,sDate,sTime,99999999);
TL_SetColor(TL1,rgb(r,0,b));
TL_SetColor(TL2,rgb(r,0,b));
TL_SetSize(TL1,굵기);
TL_SetSize(TL2,굵기);
}
2022-06-04
1287
글번호 159602