커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1531
글번호 230811
와우리 님에 의해서 삭제되었습니다.
2025-08-11
0
글번호 193162
답변완료
수식좀 부탁드립니다
60 이평이 피보나치 선을 돌파 이탈시 강세 약세 배경채우기좀 부탁드립니다. 피보나치선이 움직이니 정확도가 떨어지네요
2025-08-12
335
글번호 193161
심플리3 님에 의해서 삭제되었습니다.
2025-08-11
1
글번호 193160
답변완료
하이킨아시 수식문의
A=(O+H+L+C)/4;
A1=(C(1)+O(1))/2;
B=BBandsdown(20,2);
A1(2)>A(2) AND A1(1)<A(1) AND A1<A
AND L(2)<B(2)
하이킨아시차트에서
음양양캔들 종목을 검색하는 수식을 변환가능할까요?
2025-08-12
474
글번호 193159
답변완료
수식작성 예제에 오류가 없는 지 검토바랍니다.
https://www.yesstock.com/Board/View.asp?db=board100074&Ext=0&startpage=1&pageno=1&num=145&ref=145&Sort=&KeyField=&KeyWord=&SystemName=
위 링크의 예제에 오류가 있는 게 아닌 지 검토 바랍니다.
시스템식 설명 중에 ExitShort 호출하기위한 조건은 -1 이 아닌가 궁금해서 검토 요청드립니다.
[시스템식]
...
if marketposition() == 1 Then
ExitShort("sLoss",AtStop,EntryPrice*(1+Percent/100));
...
#포인트(원) 설정
...
if marketposition() == 1 Then
ExitShort("sLoss",AtStop,EntryPrice+pt);
2025-08-11
398
글번호 193158
답변완료
문의 드립니다.
안녕하세요 항상 감사드립니다.
일전에 만들어주신 시스템을 국내ETF 종목에 테스트중입니다.
input : 총매수금(100000000);
input : 최대누적진입횟수(40);
input : 익절(15),손절(-10);
var1 = rsi(14);
if var1 <= 55 Then
{
if (TotalTrades == TotalTrades[1] and MarketPosition == 0) or
(MarketPosition == 1 and MaxEntries < 최대누적진입횟수 and C < AvgEntryPrice and C < C[1]) Then
Buy("b",OnClose,Def,Floor((총매수금/40)/c));
}
{
ExitLong("익절",AtLimit,AvgEntryPrice*(1+익절/100));
}
if MarketPosition == 1 and MaxEntries == 최대누적진입횟수 Then
{ExitLong("손절",AtLimit,AvgEntryPrice*(1+손절/100));}
문의드립니다.
1. 첨부된 사진에서 처럼
2024/5/7에 매수 후 익일 익절
2024/5/10에 매수 후 13일 익절
익절 시점을 평단 15% 수익으로 설정을 했는데요
매수 가격과 비슷한 가격에 바로 익절이 되었습니다.
시스템 서식은 문제가 없는 것 같은데요
몇번을 테스트해도 같은 결과가 나와서 문의드립니다.
바쁘시더라도 의견 부탁드립니다.
2025-08-11
330
글번호 193157
답변완료
수식수정요청
안녕하세요 늘 도움 감사드려요. 아래의 수식에서 줄수 101 문법에러가 잘못된 토큰 오류가 나와서 수정 부탁드리며 그리고 중심선 색상이 정상적으로 작동하는지 살펴주세요
Inputs:
af(0.01),
maxAF(0.1),
추세선두께(1),
추세선색1(Yellow),
추세선색2(Cyan),
연장선두께(2),
연장선색(Gray);
Vars:
T(0), HH(0), LL(0), HD(0), HT(0), LD(0), LT(0),
HH1(0), LL1(0), HD1(0), HT1(0), LD1(0), LT1(0),
TL1(0), TL2(0), TL3(0), TL4(0), TL5(0), TL6(0), TL7(0),
TL11(0), TL22(0),
TX3(0), TX4(0), TX5(0), TX6(0), TX7(0),
value3(0), value4(0), value5(0), value6(0), value7(0);
Var: var1(0);
var1 = CSar(af, maxAF);
// 상승 전환 시
If CrossUp(C, var1) Then
Begin
T = 1;
HH = H; HD = Date; HT = Time;
HH1 = HH[1]; HD1 = HD[1]; HT1 = HT[1];
If LL > 0 Then
Begin
TL_Delete(TL3); TL_Delete(TL4); TL_Delete(TL5); TL_Delete(TL6); TL_Delete(TL7);
TL3 = TL_New(HD[1], HT[1], HH[1], Date, Time, HH[1]);
TL4 = TL_New(HD[1], HT[1], (HH[1] + LL)/2, Date, Time, (HH[1] + LL)/2); // 중심선
TL5 = TL_New(HD[1], HT[1], LL, Date, Time, LL);
TL6 = TL_New(HD[1], HT[1], HH[1] + (HH[1] - LL)/2, Date, Time, HH[1] + (HH[1] - LL)/2);
TL7 = TL_New(HD[1], HT[1], LL - (HH[1] - LL)/2, Date, Time, LL - (HH[1] - LL)/2);
TL_SetExtRight(TL3, True);
TL_SetExtRight(TL4, True);
TL_SetExtRight(TL5, True);
TL_SetExtRight(TL6, True);
TL_SetExtRight(TL7, True);
Text_Delete(TX3); Text_Delete(TX4); Text_Delete(TX5); Text_Delete(TX6); Text_Delete(TX7);
value3 = HH[1];
value4 = (HH[1] + LL)/2;
value5 = LL;
value6 = HH[1] + (HH[1] - LL)/2;
value7 = LL - (HH[1] - LL)/2;
TX3 = Text_New(Date, Time, value3, NumToStr(value3, 2));
TX4 = Text_New(Date, Time, value4, NumToStr(value4, 2));
TX5 = Text_New(Date, Time, value5, NumToStr(value5, 2));
TX6 = Text_New(Date, Time, value6, NumToStr(value6, 2));
TX7 = Text_New(Date, Time, value7, NumToStr(value7, 2));
End;
End;
// 하락 전환 시
If CrossDown(C, var1) Then
Begin
T = -1;
LL = L; LD = Date; LT = Time;
LL1 = LL[1]; LD1 = LD[1]; LT1 = LT[1];
If HH > 0 Then
Begin
TL_Delete(TL3); TL_Delete(TL4); TL_Delete(TL5); TL_Delete(TL6); TL_Delete(TL7);
TL3 = TL_New(LD[1], LT[1], HH, Date, Time, HH);
TL4 = TL_New(LD[1], LT[1], (HH + LL[1])/2, Date, Time, (HH + LL[1])/2); // 중심선
TL5 = TL_New(LD[1], LT[1], LL[1], Date, Time, LL[1]);
TL6 = TL_New(LD[1], LT[1], LL[1] - (HH - LL[1])/2, Date, Time, LL[1] - (HH - LL[1])/2);
TL7 = TL_New(LD[1], LT[1], HH[1] + (HH - LL[1])/2, Date, Time, HH[1] + (HH - LL[1])/2);
TL_SetExtRight(TL3, True);
TL_SetExtRight(TL4, True);
TL_SetExtRight(TL5, True);
TL_SetExtRight(TL6, True);
TL_SetExtRight(TL7, True);
Text_Delete(TX3); Text_Delete(TX4); Text_Delete(TX5); Text_Delete(TX6); Text_Delete(TX7);
value3 = HH;
value4 = (HH + LL[1])/2;
value5 = LL[1];
value6 = HH + (HH - LL[1])/2;
value7 = LL[1] - (HH - LL[1])/2;
TX3 = Text_New(Date, Time, value3, NumToStr(value3, 2));
TX4 = Text_New(Date, Time, value4, NumToStr(value4, 2));
TX5 = Text_New(Date, Time, value5, NumToStr(value5, 2));
TX6 = Text_New(Date, Time, value6, NumToStr(value6, 2));
TX7 = Text_New(Date, Time, value7, NumToStr(value7, 2));
End;
End;
// 중심선 색상 구분
If T = 1 Then
TL_SetColor(TL4, Yellow) // 상승 시 노란색
If T = 1 Then
TL_SetColor(TL4, Blue); // 하락 시 파란색
// 나머지 추세선, 연장선 색상 설정
TL_SetSize(TL3, 연장선두께);
TL_SetSize(TL5, 연장선두께);
TL_SetSize(TL6, 연장선두께);
TL_SetSize(TL7, 연장선두께);
TL_SetColor(TL3, 연장선색);
TL_SetColor(TL5, 연장선색);
TL_SetColor(TL6, 연장선색);
TL_SetColor(TL7, 연장선색);
Text_SetStyle(TX3, 0, 1);
Text_SetStyle(TX4, 0, 1);
Text_SetStyle(TX5, 0, 1);
Text_SetStyle(TX6, 0, 1);
Text_SetStyle(TX7, 0, 1);
2025-08-11
272
글번호 193156
답변완료
종목검색입니다
1. 음+2양+첫번째 음봉 발생
2. 양+2음+첫번째 양봉 발생
3. 전일 볼린저 하단 밴드 아래 음봉+금일 볼린저 하단 밴드 돌파 양봉
4. 전일 볼린저 하단 밴드 아래 음봉+금일 볼린저 하단 밴드 돌파 양봉+양봉...연속2양
5. 저가<(볼린저 하단 밴드)...종가>(볼린저 하단 밴드)...종가 양봉
6. 음+2양+음+양+첫번째 음봉 발생
7. 양+2음+양+음+첫번째 양봉 발생
감사합니다
2025-08-11
233
글번호 193151
답변완료
문의드립니다,
inputs : P1(5),P2(20),RSILength(10), OverSold(30),OverBought(70);
input : 첫진입금액(1000000),A(10);
var : m1(0,Data2),m2(0,Data2), R(0,Data1);
var : TT(0,Data1),T1(0,Data1),entry(0,Data1),mm(0,data1),vol(0,Data1);
m1 = Data2(ma(C,P1));
m2 = Data2(ma(C,P2));
R = data1(RSI(RSILength));
If Data2(m1 > m2) and Crossup(R, OverSold) Then
{
if TotalTrades == 0 Then
mm = 첫진입금액;
Else
mm = mm*(1+A/100);
Buy("B",OnClose,Def,Floor(Floor(mm/C)/10)*10);
}
if Data2(CrossDown(m1,m2)) or Crossup(R, OverBought) Then
Sell("S");
안녕하세요.
위 수식에 data1 이동평균선 골든시 매수하는식 추가부탁드립니다.
물론 10% 증액되면서 매수할수있도록부탁드립니다.
감사드립니다
2025-08-11
227
글번호 193142