커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
4325
글번호 230811
답변완료
분봉상 일별 ATR지표
Q&A게시판에 답변달아주신 분봉 상 일봉ATR지표입니다
이 지표에 일별 ATR종가의 n일 이동평균선도 함께 표시할 수 있는 수식을 추가해주시면 감사하겠습니다
input : P(14);
var : TH(0),TL(0),Sum(0),TR(0),DayATR(0),cnt(0);
sum = 0;
for cnt = 0 to P-1{
If DayClose(cnt+1) > dayhigh(cnt) then
TH = DayClose(cnt+1);
else
TH = dayhigh(cnt);
If DayClose(cnt+1) < DayLow(cnt) then
TL = DayClose(cnt+1);
else
TL = daylow(cnt);
TR = TH-TL;
Sum = Sum+TR;
}
DayATR = Sum/P;
plot1(DayATR);
2017-09-26
236
글번호 113109
답변완료
행복; 시스템식 작성 바랍니다
한국의 금융산업 발전을 위해 불철주야 애쓰시는 귀하의 노고를 높이 평가합니다
시스템식 관련입니다
< 질문 >
- 주기가 분봉인 경우
- 첫봉은 dayindex == 0 인데
- 마지막봉은 어떻게 표시하는지요?
수고하십시요^^
2017-09-26
164
글번호 113106
답변완료
문의
안녕하세요
일목균형지표에서 후행스팬이 60일이평을 돌파시매수 이탈시매도 이때선행스팬도같이음운 양운될때만 진입하는수식부탁합니다
감사합니다....
2017-09-27
148
글번호 113105
답변완료
수식 문의
안녕하세요
답변 주신 하기는 잘 보았습니다.
혹시 전봉의 볼랜져 밴드 상하단의 가격을 기준으로 터치시 진입을 할 수는 없는지요?
즉 현재 가격이 전봉의 볼린져 밴드 상단을 터치하면 매도 진입,
현재 각겨이 전봉의 볼린져 밴드 하단을 터치하면 매수 진입
검토 부탁드립니다.
안녕하세요
예스스탁입니다
현재봉의 상하단 밴드값으로 터치시 즉시 진입은 되지 않습니다.
현재봉의 상하단밴드가 곧 진입가격이 되게 할수는 없습니다.
랭귀지에서 조건만족시 즉시 진입하는 타입은
완성봉에서 값을 세팅하고 다음봉 미완성의 현재가와 비교합니다.
Input : Period(20), MultiD(2);
var : BBmd(0),BBup(0),BBdn(0);
BBmd = ma(C,Period);
BBup = BollBandUp(Period,MultiD);
BBdn = BollBandDown(Period,MultiD);
if bbup <= bbdn+PriceScale*50 then{
if MarketPosition <= 0 and h < bbup Then
buy("b",AtStop,bbup);
if MarketPosition >= 0 and l > bbdn Then
sell("s",AtStop,bbdn);
}
즐거운 하루되세요
> softtoug 님이 쓴 글입니다.
> 제목 : 수식부탁드립니다.
> 안녕하세요
하기 수식 부탁드립니다.
하기의 세가지 조건이 만족되어질 때 진입하는 것입니다.
볼린져 밴드 상하밴드의 폭이 50틱 이하에서는
가격이 상단밴드를 닿으면 무조건 매도진입
가격이 하단밴드를 닿으면 무조건 매수진입 수식도 부탁드립니다.
볼린져 밴드의 상/하단 밴드 가격이 곧 진입가격이 되게 끔 부탁드립니다.
감사합니다.
2017-09-26
165
글번호 113099
답변완료
수식문의
안녕하세요
하기 문의 드립니다.
확인 부탁드립니다.
1.
하기 답변주신 수식에 전혀 작동을 하고 있지 않습니다.
검토 부탁드립니다. 그리고 반대로 움직일 수 있으시다고 하셨는데
무슨 뜻인지 제가 잘 몰라서요 설명 좀 부탁드립니다.
안녕하세요
예스스탁입니다.
각 조건을 최근 X봉 중 한번만족한적 있으면 신호발생하게 수정했습니다.
신호발생봉에서는 지정한 조건과 반대로 지표가 움직이고 있을수 있습니다.
Input : Period(20), MultiD(2),P(14),short(12),long(26),sig(9),X(0);
var : BBmd(0),BBup(0),BBdn(0),Adxv(0),MACDO(0);
var : AXcond(false),mccond(false);
BBmd = ma(C,Period);
BBup = BollBandUp(Period,MultiD);
BBdn = BollBandDown(Period,MultiD);
ADXv = ADX(P);
MACDO = MACD_OSC(short,long,sig);
Condition1 = CountIF(CrossDown(L,BBdn),X) >= 1;
Condition2 = CountIF(CrossDown(H,BBup),X) >= 1;
AXcond = CountIF(adxv <= adxv[1]-0.3,X) >= 1;
MCcond = CountIF((MACDO < MACDO[1] and MACDO > 0) or (MACDO > MACDO[1] and MACDO < 0) ,X) >= 1;
if Condition1 and
AXcond and
MCcond Then
buy();
if Condition2 and
AXcond and
MCcond Then
sell();
즐거운 하루되세요
> softtoug 님이 쓴 글입니다.
> 제목 : 문의 사항
>
안녕하세요
보내주신 답변 잘 받았습니다.
조건내용이 2개 또는 3개 봉내에서 만족하면 진입할 수 있는 방법이 없을까요?
제가 프로그램 사용방법을 정확히 숙지하지는 못했는데,
coutif 문으로 가능하게 할 수 있는지요?
번거롭게 해드려서 죄송하지만, 검토 부탁드립니다.
감사합니다.
안녕하세요
예스스탁입니다.
올리신 조건내용은 한봉에서 모두 만족해야 합니다.
시간차로는 판단이 되지 않습니다.
볼밴 종가상 크로스로 작성해 드렸던 부분은
매수는 저가가 하단이하.
매도는 고가가 상단이상으로 변경해 드립니다.
Input : Period(20), MultiD(2),P(14),short(12),long(26),sig(9);
var : BBmd(0),BBup(0),BBdn(0),Adxv(0),MACDO(0);
BBmd = ma(C,Period);
BBup = BollBandUp(Period,MultiD);
BBdn = BollBandDown(Period,MultiD);
ADXv = ADX(P);
MACDO = MACD_OSC(short,long,sig);
if L <= BBdn and
adxv <= adxv[1]-0.3 and
MACDO < MACDO[1] Then
buy();
if H >= BBup and
adxv <= adxv[1]-0.3 and
MACDO < MACDO[1] Then
sell();
2017-09-26
171
글번호 113098
답변완료
다시 문의드립니다.
54974번 문의에 다시 문의드립니다.
1. 2번과 3번 항목에서 발생한 신호 캔들의 중심가(중심가가 안된다면 시가기준)에서, 매수 신호의 경우 중심가보다 아래로 8틱이상 내려가면 '청산(손절)'되게 하고 '청산'이라고 글씨를 넣고, 매도신호의 경우 신호발생 캔들의 중심가보다 위로 8틱이상 오르면 '청산'이라는 글씨와 함께 청산되게 할 수 있는지요? (틱수는 수정가능하게 부탁드립니다.)
2. 2번과 3번항목 수식에서 매수 신호는 단순이평 250선위에서 캔들이 2개이상 있을때만 나타나게 하고, 매도 신호는 단순이평250선 아래에 캔들이 2개이상 있을때만 나타나게 부탁드립니다. 요컨대, 예를 들어 캔들도 이평250선아래 있고 DPO지표와 MAO지표도 0선아래에 있다면 DPO, MAO 지표가 모두 0선을 돌파하더라도 캔들이 250선위로 두개이상 올라서야만 신호가 발생하게하고자 합니다.
만약 캔들이 250선위에서 계속 유지되고 있다면, 매도 신호는 발생하지 않아야 하고, DPO나 MAO가 0선 아래로 내려갔다가 두선 모두가 0선 위로 올라올때 매수 신호가 발생하기를 원합니다.
매도 신호의 경우에는 위와 반대로 했으면 합니다.
DPO와 STOFAST 신호 시스템은 250선 기준 조건은 같되, STOFAST 지표는 기준선을 50선으로 설정하기를 바랍니다.
부탁드립니다. 감사합니다. 수고하세요!!!
2017-09-26
162
글번호 113096
답변완료
수식문의
안녕하세요
하기 수식에 수정 부탁드립니다.
1.
Input : shortPeriod(12), longPeriod(26), Period(9);
value1 = MACD(shortPeriod, longPeriod);
value2 = ema(value1, Period);
# 매수/매도청산
If CrossUP(value1, value2) Then
{
buy("bMACD");
}
# 매도/매수청산
If CrossDown(value1, value2) Then
{
sell("sMACD");
}
- 상기 수식에서 매수는 볼린져 밴드 상단 5틱 전 부터는 적용되지 않도록 부탁드립니다.
매도 또한 볼린져 밴드 하단 5틱 전부터는 적용되지 않도록 부탁드립니다.
하단 5틱 전에서는
적용되지 않도록 부탁드립니다.
볼린져 밴드 않에서만 상기 수식이 적용되게 끔 수정 부탁드립니다.
2.
var1 = ADX(P);
var2 = MACD_OSC(short,long,sig);
var3 = ma(C,60);
if var1 >= 10 and var1 >= var1[1]+0.5 and DP > DM
Then
{ buy("b1"); }
if var1 >= 10 and var1 >= var1[1]+0.5 and DP < DM
Then
{ sell("s1"); }
상시 수식에서 매수 진입시 청산하는 방법을 추가하고 싶습니다.
1) 매수 진입후 음봉이 연속 2개 발생하면 청산합니다.
이 때, DP 선이 ADX 선보다 위에 있으면 단순히 청산하고 나옵니다.
그런데 DP 선이 ADX 선보다 아래에 있을경우 반대매매로 진입 부탁드립니다.
봉 완성 후 매도 진입 부탁드립니다.
2) 매도 진입후 양봉이 연속 2개 발생하면 청산합니다.
이 때, DP 선이 ADX 선보다 위에 있으면 단순히 청산하고 나옵니다.
그런데 DP 선이 ADX 선보다 아래에 있을경우 반대매매로 진입 부탁드립니다.
봉 완성 후 매수 진입 부탁드립니다.
감사합니다.
2017-09-26
163
글번호 113093
질갱이 님에 의해서 삭제되었습니다.
2017-09-26
1
글번호 113086
답변완료
질문드립니다.
현재가가 240일 최저가 가격보다 낮으면 매수 어떻게하나요?
2017-09-26
163
글번호 113085