커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1711
글번호 230811
답변완료
종목검색식 부탁 합니다.
안녕하세요.
아래 수식 종목검색식으로 변환 부탁 합니다.
green 신호가 발생 했을때 종목 검색 되도록 요청 드립니다.
수고하세요.
input : Periods(10);
input : Multiplier(3.0);
input : changeATR(true);
input : showsignals(true);
input : highlighting(true);
var : src(0),alpha(0),atr1(0),atr2(0),atrv(0);
var : up(0),up1(0),dn(0),dn1(0);
var : trend(0),tx(0);
src = (h+l)/2;
alpha = 1/Periods;
atr1 = iff(IsNan(atr1[1]) == true,ma(TrueRange, Periods), alpha * TrueRange + (1 - alpha) * iff(IsNan(atr1[1])==true,0,atr1[1]));
atr2 = ma(TrueRange, Periods);
atrv = iff(changeATR ==true,atr1, atr2);
up = src-(Multiplier*atrv);
up1 = iff(isnan(up[1])==true,up,up[1]);
up = iff(close[1] > up1 , max(up,up1), up);
dn = src+(Multiplier*atrv);
dn1 = iff(isnan(dn[1])==true,dn,dn[1]);
dn = iff(close[1] < dn1 , min(dn, dn1) , dn);
trend = 1;
trend = iff(isnan(trend[1])==true,trend,trend[1]);
trend = iff(trend == -1 and close > dn1 , 1 , iff(trend == 1 and close < up1 , -1 , trend));
if trend == 1 Then
{
plot1(up,"Up Trend",green);
NoPlot(2);
}
Else
{
NoPlot(1);
plot2(dn,"Down Trend",Red);
}
if trend == 1 and trend[1] == -1 Then
{
tx = Text_New(sDate,sTime,up,"●");
Text_SetColor(tx,Green);
Text_SetStyle(tx,2,2);
}
if trend == -1 and trend[1] == 1 Then
{
tx = Text_New(sDate,sTime,dn,"●");
Text_SetColor(tx,Red);
Text_SetStyle(tx,2,2);
}
2024-08-30
553
글번호 182983
회원 님에 의해서 삭제되었습니다.
2024-08-30
135
글번호 182982
답변완료
수식좀 부탁드려요
Stochastics와 RSI, MACD를 조건으로 하는 수식입니다.
***매수조건
stochastics가 과매도 상태에 들어가있다가 20위에 있고, 다시 과매수 상태에 진입하지 않은 상태에서
MACD가 MACD siganl보다 위에 있는 상황이고
RSI가 50위에 있으면 매수진입
##직접 만들다 보니, sto와 MACD가 동시에 cross되는 시점만 되어 잘안됩니다.
Sto와 MACD는 Cross가 되어있는 **이후** 상태이기만 하면 되는게 중요합니다.
***손절 및 익절
진입 시점을 기준으로 60분봉 이내 최저점에서 10틱아래
매수 청산
진입가와 손절가의 폭의 1.5배가 되는 지점에서 청산
매도는 매수의 반대와 같습니다.
2024-08-30
871
글번호 182981
답변완료
수식 부탁드립니다.
분봉 예비신호가 나왔을때 저장하고 있다가 분봉이 완성되면 무조건 매도 매수 할 수 있는 수식 부탁드립니다.
2024-08-30
737
글번호 182978
답변완료
문의드립니다
input : coeff(1);
input : AP(14);
input : novolumedata(1);#1:true, 0:False
var : atrv(0),src(0),upt(0),downt(0),AlphaTrend(0);
var : buySignalk(False),sellSignalk(False);
ATRv = ma(TrueRange, AP);
src = close;
upT = low - ATRv * coeff;
downT = high + ATRv * coeff;
Condition1 = False;
if novolumedata == 1 and rsi(AP) >= 50 Then
Condition1 = true;
if novolumedata == 0 and MFI(AP) >= 50 Then
Condition1 = true;
AlphaTrend = iff(Condition1 , IFf(upT < iff(isnan(AlphaTrend[1])==true,0,AlphaTrend[1]), iff(isnan(AlphaTrend[1])==true,0,AlphaTrend[1]) , upT),IFf(downT > iff(isnan(AlphaTrend[1])==true,0,AlphaTrend[1]) , iff(isnan(AlphaTrend[1])==true,0,AlphaTrend[1]) , downT));
if CrossUp(AlphaTrend,AlphaTrend[2]) Then
Buy();
if CrossDown(AlphaTrend,AlphaTrend[2]) Then
Sell();
수고 많으십니다
문의드릴 내용은 저번에 만들어 주신 수식인데
여기에 추가로 하루 100틱 손실이면 매매종료
하루100틱 수익이면 매매종료
이걸 추가하고 싶어서 문의드립니다
감사합니다
2024-08-30
1083
글번호 182977
답변완료
어제 수식 문의 드렸는데, 다시 한번 문의 드립니다.
어제 오류수정 도와주셨는데 제가 수치값을 잘못 입력해서
검색되어야 하는 위치가 아닌 다른 위치가 검색되었습니다.
다시 한번 오류수정 도와주시면 감사하겠습니다.
번거롭게 해드려 죄송합니다.
INPUT : midPeriod(26),Period(30),D1(1);
var : HU(0),BU(0);
HU = shift(close,-midPeriod+25);
BU = BollBandUp(Period,D1);
if (CrossUp(HU, BU))Then
Find(1);
즐거운 하루 보내세요
2024-08-30
1158
글번호 182976
답변완료
수식변환
아래 수식 변환을 부탁드립니다
수식1
A1 = H;
A2 = H(1);
A3 = H-H(1);
IF(A1>A2 ,A3,0)
수식2
A1 = L(1);
A2 = L;
A3 = L(1)- L;
IF(A1>A2 ,-A3,0)
2024-08-30
918
글번호 182971
답변완료
어제 이어서 몇 가지 여쭤보겠습니다
어제 알려주신 내용 검토를 해봤는데 잘 안나오는 부분이 있어서 여쭤봅니다
질문1)
추세선의 HH를 출력했을때
PLOT22(HH,"고가HH라인",YELLOW);
과거는 잘 나오다가 현재로 가까워질 수록 어긋나는 현상이 생기고 있습니다 (스샷 1)
추세선 HH 에 해당되지 않는 부분에도 나오는 경우도 있네요 (스샷2)
질문2) INDEX[LB] 을 확인해보려고 출력해보면 제 위치에 안나오는걸로 보여집니다 (스샷3) 추세선에서 별표시된부분이 LB 맞지 않나요??
질문3)
73번줄에
if VAR5 > 0 Then plot3(VAR5,"구간고가",Tomato);
이 부분을 수평 연장 추세선으로 표현하고 싶습니다
너무 많이 나올경우를 대비해서 150봉 까지만 나오게 하는 방법과 계속 나오는경우 각각 알려주실 수 있을까요??
감사합니다
아래는 수식입니다
input : n(10);
var : cnt(0),hh(0),hb(0),ll(0),lb(0),TL(0),TXn(0),txper(0),nline(0),tl2(0);
var : txx(0),TXper1(0);
if CountIf(H >= L*1.09,n) >= 1 Then
{
#Plot1(1);
#n개봉 최고가/최저가와 최고가/최저가 위치(몇봉전인지) 계산
hh = 0;
hb = 0;
ll = 0;
lb = 0;
For cnt = 0 to n-1
{
if hh == 0 or (hh > 0 and h[cnt] > hh) Then
{
hh = h[cnt];
hb = cnt;
}
if ll == 0 or (ll > 0 and l[cnt] < ll) Then
{
ll = l[cnt];
lb = cnt;
}
// TL2 = TL_New(sDate[n-1],sTime[n-1],hh,sDate[0],sTime[0],hh);
// TL_SetColor(tl2,Yellow);
}
// plot1(hh,"high",Magenta);
#Plot1((HH-ll)/ll*100);
#PLOT2((ll-hh)/hh*100);
if hB < lB AND ll *1.3 >H and (hh != Var3 and ll != Var4) Then
# LL*1.25<H
#
{
Plot1(2);
// TL_Delete(TL);
// Text_Delete(TX);
//TL_Delete(TL1);
VAR3 = hh;
VAR4 = ll;
VAR1 = Index[lb];
PLOT11(VAR1,"IndeX",LightGreeN);
VAR2 = VAR1[1];
if VAR2 > 0 Then
{
VAR5 = 0;
For cnt = Index-var1 to Index-var2
{
if Var5 == 0 or (Var5 > 0 and h[cnt] > Var5) Then
Var5 = h[cnt];
}
if VAR5 > 0 Then plot3(VAR5,"구간고가",TomatO);
# PLOT22(HH,"고가HH라인",YelloW);
# PLOT23(LL,"LLPLOT",LightGreeN);
# TLDHIGH = TL_NEW(SADATE
}
if var1 >= Var2 Then
{
#Plot2(var2);
TL = TL_New(sDate[lb],sTime[lb],ll,sDate[hb],sTime[hb],hh);
TL_SetDrawMode(tl,0);
// TL_SetExtRight(tl,true);
// TL_new(sDate[LB],sTime[LB],0,sDate[lb],sTime[lb],90000000);
# IF H>HH TheN PLOT11(H,"HH&",LightBluE);
TXper= text_new(sDate[lb],sTime[lb],ll,"★");
Text_SetStyle(txper,2,0);
Text_SetSizE(TXPER,15);
Text_SetColor(txper,MagentA);
/*TXper1 = text_new(sDate,sTime,ll,"★");
Text_SetStyle(txper1,2,0);
Text_SetColor(txper1,Pink);*/
}
# plot2(Index);
#nline = TL_New(sDate[n-1],sTime[n-1],hh,sDate[0],sTime[0],hh);
#TL_SetDrawMode(nline,0);
#TL_SetColor(nline,Tomato);
#TL_SetSize(nline,1);
if lb > hb Then
{
TL_SetColor(TL,ReD);
TL_SetStyle(tl,2);
TL_SetDrawMode(tl,1);
}
Else
{
TL_SetColor(TL,LightBlue);
TL_SetStyle(tl,2);
}
2024-08-30
1037
글번호 182970
답변완료
문의
A값이 70보다 크면 붉은색선이 나오고 70>A>30 시이는 노란색 30< A 보다 작으면 검정색으로
나오게 할려면 어떻게 표현하나요?
Plot3(A, "A",iff(A>70,Cyan,Green));이렇게 3번을 표현 해야되는지, 표현해볼려고 해도 잘안되네요. 부탁드립니다.
2024-08-30
1043
글번호 182968