커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
4474
글번호 230811
답변완료
문위드립니다
williams R 시스템에서
macd 오실레타와 혼합하여 신호를 줄이려고 합니다
macd 오실레타가 마이너스 영역에서는 매도신호만 나오게,,,플러스 영역에서는 매수신호만 나오게 해주세요
감사합니다
2018-12-23
284
글번호 124696
답변완료
문위드립니다
아래 참조를 보시면
그림 위에것이 macd 오실레타 기본입니다
그림 아래와 같치 나오도록 부탁드립니다
2018-12-23
328
글번호 124695
답변완료
질문입니다.
안녕하세요^
아래는 DATA2에 따른 지표식을 나타낸 것입니다. 종목에 적용을 해보니
많은 종목들이 값이 다르게 나타나서 질문드립니다.
if DATA2(MIN(DAYLOW(5),DAYLOW(4),DAYLOW(3),DAYLOW(2),DAYLOW(1))>=DAYLOW(0)) then
var1=1;
else
var1=0;
Plot1( var1, "RD",RED);
DATA2의 종목이 직전 5일간 저점을 당일 저점이 이탈하지 않았는데도 var1의 값이
1로 동일하게 나옵니다... 어떻게 수정해야 하나요?
2018-12-22
312
글번호 124694
답변완료
수식 문의드립니다.
안녕하세요.
아래 수식에 익절0.6Pt, 손절0.3Pt 설정 부탁드립니다.
감사합니다.
input: k(100);
var : T1(0),entry(0);
if Bdate != bdate[1] Then
T1 = TotalTrades[1];
if MarketPosition == 0 Then
entry = TotalTrades-T1;
Else
entry = TotalTrades-T1+1;
if ma(O-H,k)>=ma(C-H,k) then
{
if entry < 1 Then
Buy();
Else
ExitShort();
}
if ma(O-H,k)<=ma(C-H,k) then
{
if entry < 1 Then
sell();
Else
ExitLong();
}
2018-12-22
289
글번호 124693
답변완료
수식부탁드립니다.
항상 감사합니다.
항셍에서 본장이 시작되는 동시호가를 시가로 하고 싶습니다.
제가 만든 수식은 틱수나 분단위에 따라 시가가 변합니다(특히 틱챠트에서).
분이나 틱수에 관계없이 동일하게 동시호가가 시가로 표시되게 부탁드립니다.
좋은 날 되십시요.
2018-12-22
280
글번호 124692
답변완료
부탁드립니다.
- 60391관련입니다.
- 지표 감사합니다.
- 표시된 수치가 표시될 수치와 잘 맞지않습니다.
예로 3일전,2일전,1일전 동시간 최고가를 수치로 풀어보겠습니다.
o 9시 기준
3일전 9시 최고가 : 6635.25 ①
2일전 9시 최고가 : 6515.75 ②
1일전 9시 최고가 : 6492.75 ③
당일 9시 표시될 최고가 평균: 6547.92
실제 당일 9시 표시된 가격(고가평균): 4910.94 ①②③
o 익일 7시 기준
3일전 7시 최고가 : 6656 ①
2일전 7시 최고가 : 6577.5 ②
1일전 7시 최고가 : 6610 ③
익일 7시 표시될 최고가 평균: 6614.5
실제 익일 7시 표시된 가격(고가평균): 5320.85 ①②③
2018-12-25
328
글번호 124691
장군 님에 의해서 삭제되었습니다.
2018-12-21
0
글번호 124690
답변완료
문의드립니다
Input:length(10);
Var:lastHi(0),lastLo(0),lastVertex(""),procBit("");
//ssssssssssssssssssssssssssssssssss
Var:sBar(0),TL1(0);
//eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
Var:PK1(0),PK2(0),PK3(0),PK4(0),PK5(0),PK6(0),PK7(0),PK8(0),PK9(0),PK10(0),
VL1(0),VL2(0),VL3(0),VL4(0),VL5(0),VL6(0),VL7(0),VL8(0),VL9(0),VL10(0),
pkBN1(0),pkBN2(0),pkBN3(0),pkBN4(0),pkBN5(0),
pkBN6(0),pkBN7(0),pkBN8(0),pkBN9(0),pkBN10(0),
vlBN1(0),vlBN2(0),vlBN3(0),vlBN4(0),vlBN5(0),
vlBN6(0),vlBN7(0),vlBN8(0),vlBN9(0),vlBN10(0);
//==========================================
Condition1 = Highest(H,length) == H and lastHi <> H;
Condition2 = Lowest (L,length) == L and lastLo <> L;
procBit = "";
If Condition1 and Condition2 Then Begin
If lastVertex == "Valley" Then Begin
If VL1 > L Then procBit = "Valley";
Else procBit = "Peak";
End
Else If lastVertex == "Peak" Then Begin
If PK1 < H Then procBit = "Peak" ;
Else procBit = "Valley";
End;
End
Else If Condition1 Then procBit = "Peak";
Else If Condition2 Then procBit = "Valley";
//==========================================
If procBit == "Peak" Then Begin
lastHi = H;
If lastVertex == "Valley" Then Begin
PK9 = PK8; pkBN9 = pkBN8;
PK8 = PK7; pkBN8 = pkBN7;
PK7 = PK6; pkBN7 = pkBN6;
PK6 = PK5; pkBN6 = pkBN5;
PK5 = PK4; pkBN5 = pkBN4;
PK4 = PK3; pkBN4 = pkBN3;
PK3 = PK2; pkBN3 = pkBN2;
PK2 = PK1; pkBN2 = pkBN1;
PK1 = C; pkBN1 = index;
//ssssssssssssssssssssssssssssssssss
// 직전저점에서 현재의 고점까지 잇는 추세선을 생성
// 추세선생성 함수 TL_New(시작점 일자,시작점 시각,시작점 값,끝점 일자, 끝점 시각,끝점 값)
// 시작점의 일자와 시각을 구하기 위해 현재 봉에서 얼마나 떨어졌나를 계산
// 끝점은 현재 봉이므로 Date[0], Time[0]이라 [0]을 생략
sBar = index - vlBN1;
TL1 = TL_New(Date[sBar],Time[sBar],VL1,Date,Time,PK1);
// TL1은 추세선의 번호를 결과로 돌려받는다.
// 리턴된 추세선 번호를 이용해서 선의 두께와 색깔을 설정
TL_SetSize(TL1,2);
TL_SetColor(TL1,MAGENTA);
//eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
End
Else If PK1 < H Then Begin
PK1 = H; pkBN1 = index;
//ssssssssssssssssssssssssssssssssss
// 신규 고점이 생긴게 아니라 고점의 위치가 바뀐 것이므로 추세선의 끝점만 바꿔주면 된다.
// 여기서 끝점은 현재 봉이다.
TL_SetEnd(TL1,Date,Time,PK1);
//eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
End ;
lastVertex = "Peak";
End ;
//==========================================
If procBit == "Valley" Then Begin
lastLo = L;
If lastVertex == "Peak" then Begin
VL9 = VL8; vlBN9 = vlBN8;
VL8 = VL7; vlBN8 = vlBN7;
VL7 = VL6; vlBN7 = vlBN6;
VL6 = VL5; vlBN6 = vlBN5;
VL5 = VL4; vlBN5 = vlBN4;
VL4 = VL3; vlBN4 = vlBN3;
VL3 = VL2; vlBN3 = vlBN2;
VL2 = VL1; vlBN2 = vlBN1;
VL1 = L; vlBN1 = index;
//ssssssssssssssssssssssssssssssssss
sBar = index - pkBN1;
TL1 = TL_New(Date[sBar],Time[sBar],PK1,Date,Time,VL1);
TL_SetSize(TL1,2);
TL_SetColor(TL1,BLUE);
//eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
End
Else If VL1 > L then Begin
VL1 = L; vlBN1 = index;
//ssssssssssssssssssssssssssssssssss
TL_SetEnd(TL1,Date,Time,VL1);
//eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
End ;
lastVertex = "Valley";
End ;
Plot2(highest(H,length));
plot3(lowest(L,length));
그림1과같이 나오는게정상인데 ,시간이30분이나1시간이지나면 그림2번과같이변하게 됩니다,(틱이나분봉다변함) 챠트를다시건드리면 정상으로돌아옵니다 .무엇이문제인지 수정부탁드립니다~~매번감사드립니다
2018-12-24
370
글번호 124689
답변완료
문의드립니다
아래 수식에서 매매시간 설정 수식 추가 부탁드립니다
1. 10시15분~17시
2. 9시~24시
이렇게 2가지 전략으로 부탁드립니다
INPUT : LENGTH(10);
VAR : TCHAN(0), BCHAN(0);
#상단
TCHAN = HIGHEST(HIGH, LENGTH)[1];
#하단
BCHAN = LOWEST(LOW, LENGTH)[1];
#20지수이평이 60지수이평보다 크면
#다음봉에 하단 이하의 시세가 발생하면 즉시 매수진입
if ema(C,20) > ema(C, 60) Then
buy("buy", atlimit, BCHAN);
#매수진입 후
if MarketPosition == 1 Then
{
#상단까지 시세 상승하면 즉시 청산
exitlong("EL_상단터치", atlimit, TCHAN);
#30틱 수익이면 즉시 청산
exitlong("EL_익절",atlimit, EntryPrice + PriceScale*30);
#30틱 손실이면 즉시 청산
exitlong("EL_손절",AtStop, EntryPrice - PriceScale*30);
}
#20지수이평이 60지수이평보다 작으면
#다음봉에 상단 이상의 시세가 발생하면 즉시 매도진입
if ema(C,20) < ema(C, 60) Then
sell("sell", atlimit, TCHAN);
#매도진입 후
if MarketPosition == -1 Then
{
#하단까지 시세 하락하면 즉시 청산
exitshort("ES_하단터치", atlimit, BCHAN);
#30틱 수익이면 즉시 청산
exitshort("ES_익절",atlimit, EntryPrice - PriceScale*30);
#30틱 손실이면 즉시 청산
exitshort("ES_손절",AtStop, EntryPrice + PriceScale*30);
}
2018-12-23
291
글번호 124688