커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1765
글번호 230811
답변완료
부탁드립니다.
다음의 수식을 종목검색식으로 부탁드립니다.
C_Bp= (C-BBandsDown(Period,D1)) / (BBandsUp(Period, D1) - BBandsDown(Period,D1))*100;
M_Bp= ((C+O)/2-BBandsDown(Period,D1)) / (BBandsUp(Period, D1) - BBandsDown(Period,D1))*100;
BW=(BBandsUp(Period,d1)-BBandsDown(Period,d1)) / BBandsC(Period,d1)*100;
M조건= M_Bp>-50 && M_Bp <= 100;
S조건=sum(M조건, 연속횟수) == 연속횟수;
W조건=BW<=20;
BW조건=sum(W조건, 연속횟수) == 연속횟수;
BW조건(1) && S조건(1) && CrossUp(C_Bp, 100)
2022-05-29
1157
글번호 159390
답변완료
수정 부탁드립니다
input : P(200),N(3);
var : mav(0),T(0),S(0);
var1 = ma(C,15);
Var2 = ma(C,55);
Var3 = ma(c,5);
mav = ma(C,P); // mav=240
if T <= 0 and C > mav
Then
{
T = 1;
S = 0;
}
if T >= 0 and C < mav
Then
{
T = -1;
S = 0;
}
if T == -1 Then
{
if ((C < O) or (c>o)) and O <= mav
and var1>mav and Var2>mav # 원본수식 20, 60 > 240
and ((var1>mav) or(Var2>mav))
and c<var1 and c<Var2
and Var3 <= mav
Then
{
S = S+1;
if S <= N Then
PlotPaintBar(O,C,"강조",black,DEf,7);
>>>> 수식 첨부
}
}
위 수식 중 강조 아래 부분에 별표"☆"가 표시되도록 수식을 첨부되도록 하고 싶습니다
tx = Text_New(sDate,sTime,L,"☆");
Text_SetStyle(tx,2,4);
Text_SetColor(tx,deeppink);
2022-05-29
1114
글번호 159389
답변완료
문의드립니다.
안녕하세요. 수고많으십니다.
10시 15분 시작하는 항셍은 시초 갭이 생겨 첫 진입에 애매한 부분이 가끔 생깁니다.
매일 첫 신호만큼은 예를들어 5이평, 20이평 골든/데드 진입조건을 만족해도
그 다음봉에서 해당방향(매수면 위쪽, 매도면 아랫쪽)으로 15틱이상 더 갈때만 즉시 신호가 발생되거나
아니면 그 다음봉이 해당방향의 양봉/음봉일때 종가에서 신호가 발생되길 원합니다.
수고하세요~
2022-05-28
1153
글번호 159388
오이도인 님에 의해서 삭제되었습니다.
2022-05-28
5
글번호 159387
답변완료
수식 부탁드립니다
수고하십니다.
아래 지표식에서 [HTM1]의 사용자 함수식 부탁합니다.
이때 [trend1]이나 다른 변수의 사용자 함수도 필요한지 모르겠네요....?
감사합니다. 수고하세요
################
Input : ATRperiod1(1000),amplitude1(58);
var : trend1(0),nexttrend1(0),maxlowPrice1(0),minhighPrice1(0);
var : up1(0),down1(0),atrHigh1(0),atrLow1(0),arrowup1(0),arrowdown1(0);
var : atr21(0),dev1(0),highPrice1(0),lowPrice1(0),highma1(0),lowma1(0),midma1(0),HTM1(0);
atr21 = atr(ATRperiod1) / 2 ;
dev1 = atr21 * 5.5 ;
highPrice1 = Highest(H,amplitude1*1.5);
lowPrice1 = Lowest(L,amplitude1*1.5);
highma1 = ma(high, amplitude1*1.25);
lowma1 = ma(low, amplitude1*0.75);
midma1 = (highma1+lowma1)/2 ;
if nexttrend1 == 1 Then
{
maxlowPrice1 = max(lowPrice1, maxlowPrice1);
if midma1 < maxlowPrice1 and close < iff(isnan(low[1])==true,low,Low[1]) Then
{
trend1 = 1;
nexttrend1 = 0;
minhighPrice1 = highPrice1;
}
}
else
{
minhighPrice1 = min(highPrice1, minhighPrice1);
if midma1 > minhighPrice1 and close > iff(isnan(high[1])==true,high,high[1]) Then
{
trend1 = 0;
nexttrend1 = 1;
maxlowPrice1 = lowPrice1;
}
}
if trend1 == 0 Then
{
if IsNaN(trend1[1]) == False and trend1[1] != 0 Then
{
up1 = iff(IsNaN(down1[1]) == true,down1,down1[1]);
arrowup1 = up1 - atr21;
}
else
{
up1 = iff(IsNan(up1[1]) == true, maxlowPrice1 , max(maxlowPrice1, up1[1]));
}
atrHigh1 = up1 + dev1;
atrLow1 = up1 - dev1;
}
else
{
if isnan(trend1[1]) == False and trend1[1] != 1 Then
{
down1 = iff(IsNan(up1[1]) == true, up1 , up1[1]);
arrowdown1 = down1 + atr21;
}
else
{
down1 = iff(IsNan(down1[1]) == true, minhighPrice1 ,min(minhighPrice1, down1[1]));
}
atrHigh1 = down1 + dev1;
atrLow1 = down1 - dev1;
}
HTM1 = iff(trend1 == 0 , up1 , down1);
plot11(HTM1, "HTM1",iff(trend1 == 0 ,RED, BluE));
if trend1 != trend1[1] Then
{ if trend1 == 0 Then plot12(HTM1-0.1, "HTM1점",red);
Else plot12(HTM1+0.1, "HTM1점",Blue);
}
2022-05-29
1201
글번호 159386
제이디1 님에 의해서 삭제되었습니다.
2022-05-28
6
글번호 159385
답변완료
신호미발생
//식수정 부탁드립니다. 1분봉에서 돌렸는데도 b2 매수신호가 발생하지 않습니다
감사드립니다
Input: DN(0.4),TS(2),AT(15),MUL(2);
var : cnt(0),이익횟수(0);
var : cond1(False),cond2(False);
value1 = ma(C, 5);
value2 = ma(C, 20);
if bdate != bdate[1] Then
{
이익횟수 = 0;
}
if TotalTrades > TotalTrades[1] Then
{
if PositionProfit(cnt) > 0 Then
이익횟수 = 이익횟수+1;
}
#당일 이익횟수는 2회이상이고 앞에100봉내에서 2회이상 이익발생 이면
cond2 = 이익횟수 >=2 and CountIf(TotalTrades > TotalTrades[1] and PositionProfit(1) = 0,200) >= 2;
If MarketPosition == 0 and TotalTrades == TotalTrades[1] Then
{
if CrossUp(Value1,Value2) Then //cond1==True?
Buy("b1");
if cond2 ==True Then //and CrossUp(Value1,Value2)??
Buy("b2");
}
if MarketPosition == 1 Then
{
if IsEntryName("b1") Then
SetStopTrailing(dn,ts,PercentStop,1);
Else
SetStopTrailing(0,0);#해제
if IsEntryName("b2") Then
{
exitlong("t청산",atstop,highest(High,barsSinceEntry)-atr(at)*mul);
}
}
Else
{
SetStopTrailing(0,0);#해제
}
SetStopLoss(1,PercentStop);
SetStopEndofday(151000);
2022-05-28
1345
글번호 159384
답변완료
스윙 하이로우 지표
안녕하세요 개발자님 덕분에 항상 새로운 깨달음으로 시스템 트레이딩에 대한 즐거움을 느끼고 있습니다.
첨부파일에 있는 스윙 하이로우 처럼 차트에 이 지표를 적용하고 싶습니다.
스윙로우와 하이 모두 swinghigh(1,H,1,1,3) swinglow(1,L,1,1,3) 값을 가진 듯 합니다. 그리고 항상 '스윙하이>>스윙로우>>스윙하이>>스윙로우' 와 같이 스윙하이 다음에는 항상 스윙로우가 오고, 스윙로우 다음에는 항상 스윙하이가 오는 듯 합니다.
이 내용을 함수지표로 적용하고, 차트에 적용할 수 있는 방법이 있을까요?
수고 많으십니다. 감사합니다^^
2022-05-28
1337
글번호 159383
답변완료
text 함수. 줄바꿈 기능
text 함수에서
한줄로만 되니 ..
문장 줄바꿈 기능은 안되는겁니까??
방법이 있다면
알려주시면 감사하겠습니댜
2022-05-28
1096
글번호 159382