커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
5422
글번호 230811
답변완료
수식수정 바랍니다.
안녕하세요.
아래 수식은 해선용으로 쓰는데 월요일엔 수식이 작동이 아주 늦은시간이거나
다음날이 되야 작동합니다.월요일도 정상작동하게 수정바랍니다.
var:idx(0);
if Bdate != Bdate[1] Then
{
idx = 0;
value1 = V;
}
if V > value1 Then{
value1 = V;
if C >= O Then
plot1(H+0.02,"1");
PlaySound("C:₩Users₩Administrator₩Desktop₩예스글로벌₩data₩Sound₩stop.wav");
if C <= O Then
plot1(L-0.02,"1");
PlaySound("C:₩Users₩Administrator₩Desktop₩예스글로벌₩data₩Sound₩stop.wav");
}
수고하십시요.
2020-03-21
452
글번호 137078
답변완료
분봉시스템식에서일봉지표값
안녕하세요
당일분봉시스템식진입조건에
일봉지표수치를필터링으로사용하고싶습니다
일봉 rsi 값이30이하 ,70이상
아래수식 설명부탁드리고 rsi랑똑같이일봉값을사용할수잇게코딩부탁합니다
Input : Period(20), D(2);
var : Bdown(0),BUp(0),Band(0);
BDown = BollBandDown(Period,D);
BUp = BollBandUp(Period,D);
Band = ((C-BDown)/(BUp-BDown))*100;//주석및 30이하,70이상시 나타내는시장성향
위 두가지일봉지표값이가각30이하 70이상인 선물종목을찾아낼려면
검색식으로사용해야하나요?강조식으로사용해야하나요?
해당식으로코팅부탁합니다
감사합니다
2020-03-21
466
글번호 137077
답변완료
문의드립니다.
하기식을 예스로 부탁드립니다.
** 시스템식은 추가신호도 나올수 있게 부탁드립니다.
( 매수신호가 있을 경우에도 추가 매수 나올수있게 부탁드립니다.)
study(title="VDUB_BINARY_PRO_3_V2", shorttitle="VDUB_BINARY_PRO_3_V2", overlay=true)
source = close
length = input(56, minval=1, title = "WMA Length")
atrlen = input(100, minval=1, title = "ATR Length")
mult1 = 2
mult2 = 3
ma = wma(source, length)
range = tr
rangema = wma(range, atrlen)
up1 = ma + rangema * mult1
up2 = ma + rangema * mult2
dn1 = ma - rangema * mult1
dn2 = ma - rangema * mult2
color1 = white
color2 = white
u4 = plot(up1, color = color1)
u8 = plot(up2, color = color2)
d4 = plot(dn1, color = color1)
d8 = plot(dn2, color = color2)
fill(u8, u4, color=#30628E, transp=80)
fill(d8, d4, color=#30628E, transp=80)
fill(d4, u4, color=#128E89, transp=80)
//Linear regression band
src = close
//Input
nlookback = input (defval = 20, minval = 1, title = "Number of Lookback")
scale = input(defval=1, title="scale of ATR")
nATR = input(defval = 14, title="ATR Parameter")
//Center band
periods=input(21, minval=1, title="MA Period")
pc = input(true, title="MA BAND")
hld = iff(close > sma(high,periods)[1], 1, iff(close<sma(low,periods)[1],-1, 0))
hlv = valuewhen(hld != 0, hld, 1)
hi = pc and hlv == -1 ? sma(high, periods) : na
lo = pc and hlv == 1 ? sma(low,periods) : na
plot(avg(sma(high,periods)+2.5*(sma(high,periods)-sma(low,periods)),sma(low,periods)-2.5*(sma(high,periods)-sma(low,periods))), color=red, style=line,linewidth=4)
plot(pc and sma(high, periods) ? sma(high, periods):na ,title="Swing High Plot", color=black,style=line, linewidth=1)
plot(pc and sma(low,periods) ? sma(low,periods) : na ,title="Swing Low Plot", color=black,style=line, linewidth=1)
//fill(hlv,hld,color=#1c86ee,transp=80)
//--------------------------------------------------------------------------------------------
// Base line_VX1
source2 = close
short = sma(close, 3)
long = sma(close, 13)
plot(short, color=red, linewidth=2)
plot(long, color=navy, linewidth=4)
plot(cross(long, short) ? long : na, style = circles, color=blue, linewidth = 9)
OutputSignal = long >= short ? 1 : 0
bgcolor(OutputSignal>0?red:gray, transp=100)
//=======================================================
//Vdub_Tetris_V2
LRG_Channel_TF_mins_D_W_M = input("30")
Range2 = input(1)
SELL = security(tickerid, LRG_Channel_TF_mins_D_W_M, highest(Range2))
BUY = security(tickerid, LRG_Channel_TF_mins_D_W_M, lowest(Range2))
HI = plot(SELL, color=SELL!=SELL[1]?na:red,linewidth=2 )
LO = plot(BUY, color=BUY!=BUY[1]?na:green,linewidth=2 )
fill(HI, LO, color=#E3CAF1, transp=100)
Hcon = high >= SELL
Lcon = low <= BUY
plotshape(Hcon, style=shape.triangledown, color=maroon, location=location.abovebar)
plotshape(Lcon, style=shape.triangleup, color=green, location=location.belowbar)
range2 = SELL-BUY
//--------------------------------------------------
SML_Channel_TF_mins_D_W_M = input('240')
M_HIGH = security(tickerid, SML_Channel_TF_mins_D_W_M, high)
M_LOW = security(tickerid, SML_Channel_TF_mins_D_W_M, low)
plot(M_HIGH, color=M_HIGH != M_HIGH[1] ?na:fuchsia, style=line, linewidth=2)
plot(M_LOW, color=M_LOW != M_LOW[1] ?na:fuchsia, style=line, linewidth=2)
//--------------------------------------------------
Zingzag_length = input(7)
hls = rma(hl2, Zingzag_length)
isRising = hls >= hls[1]
zigzag1 = isRising and not isRising[1] ? lowest(Zingzag_length) : not isRising and isRising[1] ? highest(Zingzag_length) : na
plot(zigzag1, color=black)
Zigzag2 = input(false)
zigzag = Hcon ? high : Lcon ? low : na
plot(not Zigzag2 ? na : zigzag, color=red, style=line, linewidth=3)
//=====================================================================//
2020-03-21
596
글번호 137076
답변완료
수식부탁합니다
수고하십니다
년n봉전 저가 월n봉전 저가 주n봉전 저가 일봉n봉전 저가를 분봉차트에 라인을 만들고십습니다 부탁합니다
2020-03-21
444
글번호 137075
답변완료
수식 추가로 작성 요청드릴께요~~
아래수식은 b1~b8번 까지 다른 매수조건이지만
청산 조건은 진입후 11% 수익시 청산하게되는 수식입니다.
각각 매수조건별로 청산조건을 다르게 설계가능할까요?
예를 들면
b1조건에 매수후 3% 수익시 청산
b2조건에 매수후 4% 수익시 청산
b3조건에 매수후 5% 수익시 청산
b4조건에 매수후 6% 수익시 청산
b5조건에 매수후 7% 수익시 청산
b6조건에 매수후 8% 수익시 청산
b7조건에 매수후 9% 수익시 청산
b8조건에 매수후 10% 수익시 청산
하게 하는 식을 부탁드릴게요~~
input : n(180),하락퍼센트(0.95);
input : p(20),MFI값(70);
input : 매매수(25),금액1(0),금액2(0),금액3(5),금액4(10),금액5(15),금액6(15),금액7(15),금액8(15);
input : 전일대비하락률(0.85),청산률(11);
var1 = highest(H,n);
var2 = mfi(P);
if stime < 143000 then
{
if MaxEntries < 매매수 and
c < var1*하락퍼센트 and
var2 < MFI값 and
c < o and
c <= c[1]*(100-전일대비하락률)/100 Then
buy("b1",OnClose,def,Floor(금액1*10000/c));
if MaxEntries < 매매수 and
c < var1*(하락퍼센트-0.04) and
var2 < (MFI값-7) and
c < o and
c <= c[1]*(99.4-전일대비하락률)/100 Then
buy("b2",OnClose,def,Floor(금액2*10000/c));
if MaxEntries < 매매수 and
c < var1*(하락퍼센트-0.08) and
var2 < (MFI값-14) and
c < o and
c <= c[1]*(99.2-전일대비하락률)/100 Then
buy("b3",OnClose,def,Floor(금액3*10000/c));
if MaxEntries < 매매수 and
c < var1*(하락퍼센트-0.12) and
var2 < (MFI값-21) and
c < o and
c <= c[1]*(98.8-전일대비하락률)/100 Then
buy("b4",OnClose,def,Floor(금액4*10000/c));
if MaxEntries < 매매수 and
c < var1*(하락퍼센트-0.16) and
var2 < (MFI값-28) and
c < o and
c <= c[1]*(98.4-전일대비하락률)/100 Then
buy("b5",OnClose,def,Floor(금액5*10000/c));
if MaxEntries < 매매수 and
c < var1*(하락퍼센트-0.2) and
var2 < (MFI값-35) and
c < o and
c <= c[1]*(98.0-전일대비하락률)/100 Then
buy("b6",OnClose,def,Floor(금액6*10000/c));
if MaxEntries < 매매수 and
c < var1*(하락퍼센트-0.24) and
var2 < (MFI값-42) and
c < o and
c <= c[1]*(97.6-전일대비하락률)/100 Then
buy("b7",OnClose,def,Floor(금액6*10000/c));
if MaxEntries < 매매수 and
c < var1*(하락퍼센트-0.28) and
var2 < (MFI값-48) and
c < o and
c <= c[1]*(97.2-전일대비하락률)/100 Then
buy("b8",OnClose,def,Floor(금액6*10000/c));
SetStopProfittarget(청산률,PercentStop);
}
Else
SetStopProfittarget(0);
2020-03-21
448
글번호 137074
답변완료
해석좀
accumn(bids-asks,dayindex+1)>0
이 수식이 무슨뜻인가요? 이용해보려고 합니다
2020-03-20
432
글번호 137073
답변완료
도움요청드립니다.
안녕하세요?
최근 답변 감사히 잘받았습니다.
아래는 답변받은 수식인데요, 전일 마지막캔들까지 인식을 해버리거든요.
예를들어 2틱양봉 2틱양봉후에 매수라고 설정을해놓으면, 전일마지막캔들이 2틱양봉으로 끝난경우에 그것까지 인식을해서 당일 첫번째봉에 진입을 하더라구요.
차트에서 금일만 나오게해서 하는방법은 알고있지만, 성능보고서로 체크도힘들고, 현재 그렇게 거래하고있는 시스템은 하나도없어서 많이불편해서그런데, 혹시 수식으로 연결선물로해서 금일것만 인식해서 매매가 이루어지도록 하는방법은 없나요?
도움요청드립니다.
감사합니다.
input : 매수전봉양봉틱수(5),매수현재양봉틱수(5);
input : 매도전봉음봉틱수(5),매도현재음봉틱수(5);
input : 진입횟수(5);
input : 익절틱수(50),손절틱수(50);
var : entry(0);
if bdate != bdate[1] Then
entry = 0;
if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then
entry = entry+1;
if entry < 진입횟수 and
MarketPosition == 0 and
C[1] == O[1]-매도전봉음봉틱수*PriceScale and
C[0] == O[0]-매도현재음봉틱수*PriceScale Then
sell("s");
if entry < 진입횟수 and
MarketPosition == 0 and
C[1] == O[1]+매수전봉양봉틱수*PriceScale and
C[0] == O[0]+매수현재양봉틱수*PriceScale Then
buy("b");
if MarketPosition == 1 Then
sell("bs",AtStop,EntryPrice-PriceScale*손절틱수);
if MarketPosition == -1 Then
buy("sb",AtStop,EntryPrice+PriceScale*손절틱수);
SetStopProfittarget(PriceScale*익절틱수,PointStop);
2020-03-20
437
글번호 137072
답변완료
안녕하세요
5분봉시스템식에
일봉10이평값을변수로사용하려면
어떻게값을구하여저장하나요?
감사합니다
2020-03-20
480
글번호 137071
답변완료
글번호 66571 에 대한 추가 질문입니다.
봉수 제한없이 가장최근 만족한 시점에서 몇봉이 지났는지 알고자 하시면 아래와 같이 작성하시면 됩니다.
var : ii(0);
if condition1 and condition2 and condition3 Then
ii = index;
var1 = index-ii;
답변 주신 내용에서 봉수 제한은 없어도 되는데, 매매 당일에 한정하고
그리고, 첫봉은 제외하고 두번째 봉부터 비교 하려면 어떻게 해야할까요?
수고하세요.
2020-03-22
548
글번호 137070