커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7788
글번호 230811
답변완료
답변감사합니다 근데 다시한번질문좀...
답변대로하니 그냥어떤한선이 쭉이어져만있더라구요
아마 제가 원한것은 아닌것같습니다
제가 팬텍이라는 싸이트에서 분봉데이터를 받았는데요
올려주신분이 이수식도 같이 올려주셨더라구요
input : iTitle(String);
var : nPt(0);
Print( String, "₩t%.2f₩t%.2f₩t%.2f₩t%.2f", O, H, L, C );
Plot1( "point", nPt );
그리고 텍스트내용은
2005-01-03 10:00:00 122.50 122.55 122.35 122.40
2005-01-03 10:01:00 122.40 122.50 122.35 122.40
2005-01-03 10:02:00 122.40 122.45 122.30 122.40
2005-01-03 10:03:00 122.40 122.50 122.40 122.45
2005-01-03 10:04:00 122.45 122.45 122.20 122.20
2005-01-03 10:05:00 122.20 122.40 122.10 122.35
2005-01-03 10:06:00 122.35 122.65 122.30 122.60
2005-01-03 10:07:00 122.60 122.65 122.50 122.50
2005-01-03 10:08:00 122.50 122.55 122.40 122.40
2005-01-03 10:09:00 122.40 122.45 122.35 122.35
2005-01-03 10:10:00 122.40 122.40 122.05 122.10
2005-01-03 10:11:00 122.05 122.20 122.05 122.20
2005-01-03 10:12:00 122.25 122.35 122.20 122.30
2005-01-03 10:13:00 122.30 122.50 122.30 122.45
이런식으로 되있더라구요 파일용량이커서 올리지는못하고 이런식이라는것만
알려드립니다 이게 혹시 차트를 만드는 식인가요?
암튼 다시한번 부탁드리겠습니다 그리고 만약 텍스트파일을 특정장소에
옴겨야한다면 어디다 옴겨야되는지도...
2008-10-13
902
글번호 17500
답변완료
매매방식 문의
현재 리버설로 짜여진 시스템을 매수 매수청산 매도 매도청산 이런식으로
순차적으로 매매할 수 있게 적용하는 방법관련, 매매로직간 시차를 줘서
이렇게 구현할 수는 없는지요?
애초 시스템 만들면서 리버설(봉완성 진입)로 만들어서 이걸 일일이 주문함수를
Buy - Exitlong - Sell - Exitshort로 풀어서 다시 만들려니
시간도 많이 걸리고, 기대만큼 성과도 안나옵니다.
좋은 방법 좀 알려주세요.
2008-10-13
931
글번호 17499
답변완료
수식부탁드립니다.
특정갯수의 봉안에 여러개의 조건을 나눌수 잇는 식을 부탁드립니다.
예를 들어 50개봉사이에 1번 조건이 되면 1 2번조건이 만족하면 2
3번 조건이 만족하면 3 4번조건이 만족하면 4 를 적용하여라 ..
조건은 아무조건이나 예를 들어 부탁드립니다.. 미리 감사드려요 ~
2008-10-13
916
글번호 17498
답변완료
수식좀 만들어 주세요
스토케스틱 교차시 진입하려고 하는데
단, 과매수구간(80) , 과매도 구간(20) 일경우
과매수 , 과매도 구간에서 스토케스틱 교차일경우 진입하려고 합니다.
과매수 구간에서 교차시 매도,
과매도 구간에서 교차시 매수.
2008-10-13
1011
글번호 17492
답변완료
이수식어떻게쓰는거죠?
텍스트파일과 함께 쓰는 수식인것같은데요
예스랭귀지에 대입해보면 오류만나요
이거 쓸수있는방법좀알려주세요
input : iTitle(String);
var : nPt(0);
Print( String, "₩t%.2f₩t%.2f₩t%.2f₩t%.2f", O, H, L, C );
Plot1( "point", nPt );
2008-10-13
885
글번호 17491
답변완료
상.하한가 청산식
var : not(0);
If CrossDown(L, dayclose(1)*0.901) Then{
ExitShort("하한가.청산"); // 하한가 갈시 매도분 청산
not = 1; // not 에다가 1 누적
}
If 매도진입식 And not < 1 Then // 하한가로 청산시 매도 진입금지.
Sell();
엊그제 7년만에 하한가를 맞는... 기염을 토했는데요.. 그게 하한가인지도 모르고..
수익분을 일부 많이 토했네요.
이렇게 하면은.. 별로 문제없어보이는데.. 아무리봐도 잘못된점은 없는데.. 이상하네요 ;;
해결좀 해주세요!!
2008-10-13
851
글번호 17490
답변완료
답변 잘 봤습니다. 도움 요청
렌코차트 지표식과 시스템식을 다음과 같이 고쳐주셨네요
다음
1. 지표식
input:단위호가(5);
var:j(0),벽돌크기(0),방향(0),상승(1),하락(-1);
array:고[10](0),저[10](0);
if index == 0 then {
벽돌크기 = _TickValue() * 단위호가; //_TickValue()는 사용자 함수
고[0] = C;
저[0] = C;
}
if 방향 == 0 then {
if 저[0] - 벽돌크기 >= C then {
저[0] = 저[0] - int((저[0]-C)/벽돌크기)*벽돌크기;
방향 = 하락;
}
else if 고[0] + 벽돌크기 <= C then {
고[0] = 고[0] + int((C-고[0])/벽돌크기)*벽돌크기;
방향 = 상승;
}
}
else if 방향 == 하락 then {
if 저[0] - 벽돌크기 >= C then
저[0] = 저[0] - int((저[0]-C)/벽돌크기)*벽돌크기;
if 저[0] + 2*벽돌크기 <= C then {
for j = 8 downto 0 {
고[j+1] = 고[j];
}
방향 = 상승;
고[0] = 저[0] + int((C-저[0])/벽돌크기)*벽돌크기;
}
}
else if 방향 == 상승 then {
if 고[0] + 벽돌크기 <= C then
고[0] = 고[0] + int((C-고[0])/벽돌크기)*벽돌크기;
if 고[0] - 2*벽돌크기 >= C then {
for j = 8 downto 0 {
저[j+1] = 저[j];
}
방향 = 하락;
저[0] = 고[0] - int((고[0]-C)/벽돌크기)*벽돌크기;
}
}
if 방향[1]==하락 and 방향==상승 then
plot1(저[0],"렌코차트",Blue);
if 방향[1]==상승 and 방향==하락 then
plot1(고[0],"렌코차트",RED);
2. 시스템식
input:단위호가(5);
var:j(0),벽돌크기(0),방향(0),상승(1),하락(-1);
array:고[10](0),저[10](0);
if index == 0 then {
벽돌크기 = _TickValue() * 단위호가; //_TickValue()는 사용자 함수
고[0] = C;
저[0] = C;
}
if 방향 == 0 then {
if 저[0] - 벽돌크기 >= C then {
저[0] = 저[0] - int((저[0]-C)/벽돌크기)*벽돌크기;
방향 = 하락;
}
else if 고[0] + 벽돌크기 <= C then {
고[0] = 고[0] + int((C-고[0])/벽돌크기)*벽돌크기;
방향 = 상승;
}
}
else if 방향 == 하락 then {
if 저[0] - 벽돌크기 >= C then
저[0] = 저[0] - int((저[0]-C)/벽돌크기)*벽돌크기;
if 저[0] + 2*벽돌크기 <= C then {
for j = 8 downto 0 {
고[j+1] = 고[j];
}
방향 = 상승;
고[0] = 저[0] + int((C-저[0])/벽돌크기)*벽돌크기;
}
}
else if 방향 == 상승 then {
if 고[0] + 벽돌크기 <= C then
고[0] = 고[0] + int((C-고[0])/벽돌크기)*벽돌크기;
if 고[0] - 2*벽돌크기 >= C then {
for j = 8 downto 0 {
저[j+1] = 저[j];
}
방향 = 하락;
저[0] = 고[0] - int((고[0]-C)/벽돌크기)*벽돌크기;
}
}
if 방향[1]==하락 and 방향==상승 then Buy("상승전환");
if 방향[1]==상승 and 방향==하락 then Sell("하락전환");
질문
_tickvalue가 에러가 납니다.
틱벨류가 사용자 함수라고 하셨는데 그게 무슨 말인지요. 그리고 어떻게 해야 에러가 나지 않는지 다 알려주시면 좋겠습니다.
2008-10-13
858
글번호 17489
답변완료
2연속 손실시 거래중단 부탁드립니다..
당일 거래가
1회이익, 1회손실, 1회이익 1회손실.. = 2회손실이니 거래중지
가 아니라
1회손실 1회손실 같은 연속된 손실시 중단하는 방법이 있나요?
그리고 당일거래로 2회손실시에 중단일 경우에는 그 영향으로
다음날에는 1회손실시 중단.
같은 방법도 있으면 알려주시면 감사하겠습니다.
아직 배우는 입장이라 제가 잘 할줄 몰라서
현재 이것저것 고치고 만들고있는 식을 함께 올려봤습니다..
이왕이면 주석도 함께 달아주시면 저같은 초보입장에서 많은 도움이 될것같습니다.
부탁드립니다^^;
############################################################
var : count(0);
Count = 0 ;
for Value1 = 0 to 10 {
if EntryDate( Value1 ) == sdate then
Count = Count + 1;
}
## 시초가에서 4% 상승하면 매수
if count == 0 and stime >= 93000 and stime < 145000 Then
{
buy("매수1",atstop,dayopen()*1.04);
}
## 청산 후 최저점에서 7% 상승하면 매수
if count > 0 and count < 3 and stime >= 93000 and stime < 145000 Then
{
buy("매수2",atstop,lowest(L,BarsSinceExit(1))*1.07);
}
##진입후 최고가에서 14%하락하면 청산
if MarketPosition()== 1 Then
{
exitlong("X1",AtStop,highest(H,BarsSinceEntry)*0.86);
}
2008-10-13
771
글번호 17488
답변완료
질문 있습니다
장 시작후 10개봉 동안의 최저가를 저장한뒤
특정 조건으로 매수가 들어가서 위에 저장한 최저가를 깨면
청산을 하고(위의 최저가는 청산(손절)을 위해 저장되는것)
반대로 수익이 나기 시작한다면 0.5 포인트 단위로 수익이 나는 만큼
청산(손절)라인 역시0.5포인트씩 상승하도록 하는 시스템식을 만들고 싶습니다.
hulrestar@naver.com 으로 메일 주세요.
2008-10-13
744
글번호 17476