커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
4437
글번호 230811
knb 님에 의해서 삭제되었습니다.
2017-02-23
33
글번호 107193
답변완료
다음 수식 부탁드립니다.
안녕하세요.
다음 지표와 수식을 활용하여 2가지 수식 부탁드립니다.
감사합니다.
(1식)
다음 지표(수식)이 상방이고, 시가위 첫 양봉에서 매수후 종가 청산.
다음 지표(수식)이 하방이고, 시가밑 첫 음봉에서 매도후 종가 청산.
(2식)
다음 지표(수식)이 상방이고 시가위 첫 양봉에서 매수후, 다음날 시초가 기준으로 같은 조건이면 보유, 반대조건(하방/시가밑 음봉)이면 포지션 청산과 매도 체결.
다음 지표(수식)이 하방이고 시가밑 첫 음봉에서 매도후, 다음날 시초가 기준으로 같은 조건이면 보유, 반대조건(상방/시가위 양봉)이면 포지션 청산과 매수 체결.
input : short(12),long(26),sto1(14),sto2(3),sto3(3);
var : HH(0),LL(0),FK(0),SK(0),SD(0),T(0);
var1 = MACD(short,long);
HH = Highest(var1, sto1);
LL = Lowest(var1, sto2);
FK = (var1 - LL) / (HH-LL) * 100;
SK = ema(FK,sto1);
SD = ema(SK,sto2);
if c > dayopen then{
if SK > SK[1] and SK[1] < Sk[2] Then
buy("b");
if SK < SK[1] and SK[1] > Sk[2] Then
ExitLong("bx");
}
if c < dayopen then{
if SK < SK[1] and SK[1] > Sk[2] Then
sell("s");
if SK > SK[1] and SK[1] < Sk[2] Then
ExitShort("sx");
}
-----------
지표식
input : short(12),long(26),sto1(14),sto2(3),sto3(3);
var : HH(0),LL(0),FK(0),SK(0),SD(0),T(0);
var1 = MACD(short,long);
HH = Highest(var1, sto1);
LL = Lowest(var1, sto2);
FK = (var1 - LL) / (HH-LL) * 100;
SK = ema(FK,sto1);
SD = ema(SK,sto2);
plot1(Sk);
plot2(sd);
PlotBaseLine1(20);
PlotBaseLine2(80);
2017-02-23
100
글번호 107189
좌오비우오비 님에 의해서 삭제되었습니다.
2017-02-23
22
글번호 107187
답변완료
if 가 잘못된토큰이라고 나오네요
//매수
if MA(c, 기간1) < (if((mav1)/2>(mav2)/2,(mav1)/2,(mav2)/2)*p1) Then
{
buy();
}
2017-02-23
100
글번호 107186
답변완료
수정 부탁할게요.
영웅문에서 쓰던 수식을 제 스스로 바꿔보려고 했는데 잘 안되네요...
도움 부탁합니다.
1.
H)
a=highestsince(1,crossup(avg(c,5),avg(c,20)),avg(c,20));
L)
a=lowestsince(1,crossdown(avg(c,5),avg(C,20)),avg(C,20));
C)
avg(C,20)
2.
p1=14, AH=70, AL=30
R=RSI(P1);
A=CROSSUP(R,AL);
VALUEWHEN(1,A,L);
R=RSI(P1);
A=CROSSDOWN(R,AH);
VALUEWHEN(1,A,H);
2017-02-23
100
글번호 107185
답변완료
시스템문의
안녕하세요
하기 수정해주신 수식 중에서 잘 되지 않는 것이 있어서 메일 드립니다.
볼린져 밴드 중앙선과 만나기전에 MACD ocilltor가 바뀌었는데도 손절이나
반대매매가 이루어 지지 않고 있습니다.
주신 수식은 밴드 중앙만 만날때 청산되고 있습니다.
차라리 MACD ocillator 가 바뀌면 청산되는 식 하나로만 부탁드립니다.
매수 진입시 MACD ocillator가 음으로 바뀌면 청산
매도 진입시 MACD ocillator가 양으로 바뀌면 청산 이렇게 부탁드립니다.
청산이 되고, 그 다음에 반대매매 진입입니다.
주신 수식은 반대매매 진입이 되지 않고 있습니다.
MACD ocillator가 바뀌어서 청산이 되는 것과 동시에 반대매매 진입이 이루어
졌으면 합니다. 단 반대매매는 한번만 들어가게 부탁드립니다.
ADX라인이 증가하지 않는 부분은 차라리 생략하겠습니다.
상기 두가지만 다시 검토 부탁드립니다.
감사합니다.
안녕하세요
예스스탁입니다.
input : P(14),BBP(20),dv(2),MAP(60);
input : short(12),long(26),sig(9);
var : ADXV(0),DP(0),DM(0),T(0),BBup(0),BBdn(0),mav(0);
var : MACDV(0),MACDS(0),Bcond(false),Scond(False),bbmd(0),diff(0),cnt(0),count(0);
var : MACDO(0);
ADXV = ADX(P);
DP = Diplus(P);
DM = DiMinus(P);
bbmd = ma(c,BBP);
BBup = BollBandUp(BBP,dv);
BBdn = BollBandDown(BBP,dv);
mav = ma(C,MAP);
MACDV = MACD(short,long);
MACDS = ema(MACDV,sig);
MACDO = MACDV-MACDS;
diff = C-O;
if MarketPosition <= 0 and
C > BBup and C > O and countif(C > C[1],2) == 2 and
(ADXV < 40 or (ADXV > 40 and DP > DM)) and
BBup-BBdn >= PriceScale*30 and countif(adxv > adxv[1],2) == 2 Then{
buy("b2");
}
if MarketPosition >= 0 and
C < BBdn and C < O and countif(C < C[1],2) == 2 and
(ADXV < 40 or (ADXV > 40 and DP < DM)) and
BBup-BBdn >= PriceScale*30 and countif(adxv > adxv[1],2) == 2 Then{
sell("s2");
}
if MarketPosition == 1 Then{
ExitLong("bx1",AtStop,BBmd);
if BarsSinceEntry > 3 and CrossDown(MACDO,0) Then
ExitLong("bx2");
if IsEntryName("b2") == true and BarsSinceEntry <= 3 and CrossDown(MACDO,0) Then
sell("bs1");
if ADXV <= ADXV[1] Then
sell("bs2");
}
if MarketPosition == -1 Then{
ExitShort("sx1",AtStop,BBmd);
if BarsSinceEntry > 3 and CrossUp(MACDO,0) Then
ExitShort("sx2");
if IsEntryName("s2") == true and BarsSinceEntry <= 3 and CrossDown(MACDO,0) Then
Buy("sb1");
if ADXV <= ADXV[1] Then
buy("sb2");
}
즐거운 하루되세요
> softtoug 님이 쓴 글입니다.
> 제목 : 수식문의
> 안녕하세요
하기 수식문의 드립니다.
input : P(14),BBP(20),dv(2),MAP(60);
input : short(12),long(26),sig(9);
var : ADXV(0),DP(0),DM(0),T(0),BBup(0),BBdn(0),mav(0);
var : MACDV(0),MACDS(0),Bcond(false),Scond(False),bbmd(0),diff(0),cnt(0),count(0);
ADXV = ADX(P);
DP = Diplus(P);
DM = DiMinus(P);
bbmd = ma(c,BBP);
BBup = BollBandUp(BBP,dv);
BBdn = BollBandDown(BBP,dv);
mav = ma(C,MAP);
MACDV = MACD(short,long);
MACDS = ema(MACDV,sig);
diff = C-O;
if MarketPosition <= 0 and
C > BBup and C > O and countif(C > C[1],2) == 2 and
(ADXV < 40 or (ADXV > 40 and DP > DM)) and
BBup-BBdn >= PriceScale*30 and countif(adxv > adxv[1],2) == 2 Then{
buy("b2");
}
if MarketPosition >= 0 and
C < BBdn and C < O and countif(C < C[1],2) == 2 and
(ADXV < 40 or (ADXV > 40 and DP < DM)) and
BBup-BBdn >= PriceScale*30 and countif(adxv > adxv[1],2) == 2 Then{
sell("s2");
}
상기 수식에서 손절방법을 부탁드립니다.
1. 매도든 매수든 가격이 볼린져 밴드 중앙선과 닿으면 손절하는 수식 부탁드립니다.
2. MACD oscillator 가 바뀌면 손절하는 수식 부탁드립니다.
그리고 MACD ocillator 변경이 진입후 3개 봉이내에 바뀔경우에는 반대매매 부탁드립니다.
반대매매는 한번만 들어가는 것으로 부탁드립니다.
3. 더이상 ADX 라인이 증가하지 않으면,
매도 진입했던 것은 매수로 반대매매 진입,
매수 진입했던 것은 매도로 반대매매 진입 부탁드립니다.
감사합니다.
2017-02-23
105
글번호 107183
답변완료
부탁드립니다
var1 = ma(c,1);
var2 = ma(C,20);
if crossup(var1,var2) and countif(C>O,2) == 2 Then
buy("b");
if CrossDown(var1,var2) and countif(C<O,2) == 2 Then
sell("s");
골든크로스후 연속양봉(골든포함)에 신호를 띄우는 식인데 엉뚱한데 뜨네요
부탁드립니다
2017-02-23
105
글번호 107182
천용인 님에 의해서 삭제되었습니다.
2017-02-23
35
글번호 107180
답변완료
지표 하나만 만들어주세요!
이평선을 가지고 만들꺼구요.
macd 오실레이터처럼 바 형식으로 나타나게 해주세요.
이평선이 상승하면 0선 기준으로 상승바, 하락바가 나타나게 해주세요.
표시는 0.xxx, 즉 소수점 세째자리까지 나오게 해주세요!
2017-02-23
119
글번호 107175