커뮤니티
예스랭귀지 Q&A
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1479
글번호 230811
답변완료
지표 수정
79510번에 지표식 한개추가 부탁드립니다(바탕화면)
1,5일선이평 20일선이평내용
2,스토캐스틱 슬로우내용
3,MACD선과Signal선이 교차상승시는(분홍색)
MACD선과signal선이 교차하향시는(하늘색)
잘 부탁드립니다
2023-12-06
678
글번호 174604
답변완료
손절식 수정 문의 드립니다.
항상 많은 도움 감사드립니다. 아래와 같이 시스템 식을 작성하였는데 생각대로 작동하지 않는 부분이 있어서 수정 문의 드립니다.
Q&A 관리자 분의 도움으로 아래와 같이 작성을 하였는데요..
MarketPosition == -1 매도 포지션 일때는 stoploss가 제대로 작동하는데
MarketPosition == 1 매수 포지션 일때 stoploss 가 작동을 하지 않습니다.
어떤 부분을 수정해야 하나요? 혹은 다른 시스템식으로 작성을 하여야 하나요?
매도,매수 모두 분할청산 및 청산은 문제없이 작동합니다.
///////////////////////////////////////////////////////////////
if MarketPosition == 1 Then
{
if IsEntryName("A매수") == true Then
{
ExitLong("Sp1",AtLimit,EntryPrice+20,"",1,1);
SetStopLoss(20,PointStop);
if A-1 Then
ExitLong("A매수정리",atmarket,def,"A매수");
}
if IsEntryName("b매수") == true Then
{
ExitLong("Sp2",AtLimit,EntryPrice+10,"",1,1);
SetStopLoss(10,PointStop);
if A-1 Then
ExitLong("B매수정리",atmarket,def,"B매수");
}
}
Else
SetStopLoss(0);
////////////////////////////////////////////////////////////////////////
if MarketPosition == -1 Then
{
if IsEntryName("A매도") == true Then
{
Exitshort("Bp1",AtLimit,EntryPrice-20,"",1,1);
SetStopLoss(20,PointStop);
if A-1 Then
Exitshort("A매도정리",atmarket,def,"A매도");
}
if IsEntryName("b매도") == true Then
{
Exitshort("Bp2",AtLimit,EntryPrice-10,"",1,1);
SetStopLoss(10,PointStop);
if B-1 Then
ExitLong("B매도정리",atmarket,def,"B매도");
}
}
Else
SetStopLoss(0);
2023-12-05
675
글번호 174602
회원 님에 의해서 삭제되었습니다.
2023-12-05
80
글번호 174601
답변완료
지표를 부탁드립니다...
선물일봉캔들에서 아래꼬리 윗꼬리가 0.5포인트보다 같거나 작으면 봉에 표시를 하고싶습니다..
윗꼬리가 작으면 봉위에 빨간점으로 아래꼬리ㅣ가 작으면 봉아래 파란점으로 표시하고싶습
니다,감사합니다
2023-12-05
929
글번호 174600
답변완료
문의 드립니다.
[지표1]
수식1
r=rsi(기간);
(highest(r,short)+lowest(r,short)+highest(r,mid)+lowest(r,mid))/4
수식2
r=rsi(기간);
(highest(r,long)+lowest(r,long))/2
[지표2]
수식4
r=rsi(기간);
a=(highest(r,short)+lowest(r,short)+highest(r,mid)+lowest(r,mid))/4;
if(a>=50,a,50)
수식5
r=rsi(기간);
a=(highest(r,long)+lowest(r,long))/2;
if(a>=50,a,50)
[지표3]
수식4
r=rsi(기간);
a=(highest(r,short)+lowest(r,short)+highest(r,mid)+lowest(r,mid))/4;
if(a<=50,a,50)
수식5
r=rsi(기간);
a=(highest(r,long)+lowest(r,long))/2;
if(a<=50,a,50)
short : 9
long : 26
mid : 52
기간 : 14
위 수식은 올린 이미지의 수식인데
50선을 기준으로 상하 다른 색으로 나누어져 있습니다.
위 수식을 합쳐서
일목균형표 구름대처럼 양운과 음운의 색을 다르게해서 예스수식으로 만들어주세요.
2023-12-05
1263
글번호 174599
답변완료
문의드립니다
D1 = data1((C-CloseD(1))/CloseD(1)*100);
위식은 전일종가대비 상승율인가요?
당일시가 대비 상승율식 좀 부탁드립니다
감사합니다
2023-12-05
1019
글번호 174598
답변완료
수식문의 드립니다
수고 많으십니다.
항상 감사드립니다.
아래 if문 종목 검색식으로 부탁드리겠습니다.
비율선은 변수처리하였습니다.
input : 기간(30),비율(0);
var : 시작조건(False),시작위치(0),폭(0),bs(0),k(0),비율선(0);
시작조건 = Highest(H, 기간)[1]<H;
if 시작조건 Then
{
시작위치 = H;
bs = 0;
}
Else
{
if 시작위치 > 0 Then
bs = bs+1;
}
폭 = 시작위치*(비율/100);
K = iff(시작조건, 시작위치, 시작위치 + 폭*Bs);
비율선 = iff(K<K[1], K, 0);
-----------------------------------------------------
if 1봉전 종가보다 현재봉이 3% 이상
10봉중에서 비율선 크로스업이 1회이상 (1봉전기준) and
10봉중에서 전봉대비 거래량이 1000% 1회 이상 (1봉전 기준) and
10봉중에서 고가가 20%이상 나온봉 (1봉전 기분) Then
Find(1);
2023-12-05
1139
글번호 174597
답변완료
문의
일봉의 5일선20일선 60일선을 데이타2의 분봉상에 나타나게 부탁드릴게요
2023-12-05
1132
글번호 174586
답변완료
전환추세 크기
Input : 전환(0.2);
Var:j(0),jj(0),HH(0),LL(0),hiBar(0),loBar(0),최종꼭지점(""),처리구분(""),TL1(0),Tx(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]+전환 <= HH and hiBar == 0;
Condition2 = 고[1,1]-전환 >= 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
{
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,2);
TL_SetColor(TL1,RED);
}
Else If 고[1,1] < HH[hiBar] Then
{
고[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]);
}
최종꼭지점 = "고점";
}
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] = 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,2);
TL_SetColor(TL1,BLUE);
if 고[1,1] <= 고[2,1] + PriceScale* 1 and 고[1,1] >= 고[2,1] - PriceScale* 1 Then
{
Sell();
}
}
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]);
}
최종꼭지점 = "저점";
}
if MarketPosition == 1 and BarsSinceEntry == 1 Then ExitLong();
if MarketPosition == -1 and BarsSinceEntry == 1 Then ExitShort();
하락추세선의 크기가 0.7p 이상일때 양전환되면 매수 추가. 다음봉에 매수청산. 감사합니다.
2023-12-05
1127
글번호 174582