커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7735
글번호 230811
답변완료
수식부탁드립니다~
수식부탁드릴게요~
100이평선을 20이평선이 크로스업하면 매수진입
매수진입후 2pt수익이 나면 매수청산하고
청산이후 매도진입 신호전까지 재진입없음
100이평선을 20이평선이 크로스다운하면 매도진입
매도진입후 2pt 수익이 나면 매도청산하고
청산이후 매수진입 신호전까지 재진입없음
감사합니다.
2011-04-12
680
글번호 37534
답변완료
iff?
iff(PositionProfit(1) > 0,수량,CurrentContracts[BarsSinceEntry(1)]*2)
//이게 무슨의미엿조?
iff는 (조건,참값,거짓값)
조건이 만족하면 참값으로 지정한 값을 할당,,
조건이 만족하지 않으면 거짓값으로 지정한 값을 할당
2011-04-12
734
글번호 37532
답변완료
포지션 청산 관련 질문
옵션을 처음에 1.50에 매도하고
두번째 1.20에 매도를 하고
손절을 30틱을 주었을 때
제가 원하는 결과는 1.50은 1.80에 매도청산을 하고
1.20은 1.50에 매도청산을 하고 싶습니다.
그런데 1.20에 매도한 옵션이 1.80에 매도청산 주문이 나가는데요.
수정 할 수 있는 방법이 있나여?
2011-04-12
726
글번호 37525
답변완료
부탁드립니다
예를 들어서 질문하겠습니다..
5,20 골든크로스(매수1) 혹은 5,60 골든크로스시(매수2) 매수가 들어갑니다..
이때 매수1이 들어갔다면 5,20데드크로스시에만 매수청산을 하고(청산1) 매수2가 들어갔으면 5,60데드크로스시에만 매수청산(청산)을 합니다. 그날 3시까지 진입과 청산을 계속 이런식으로 할수 있도록 식 부탁드립니다.... 제가 isexitname을 이용해서 나름대로 식을 만들어봤는데 공부가 부족해서 2번만 진입이 되고 이후에는 되지 않더군요
미리 감사드립니다^^
2011-04-12
721
글번호 37524
답변완료
Exitlong 관련
안녕하십니까?
10계약을 매수한 후
"if 조건 1 then 3 계약 청산" 이라는 청산 식을 만들었는데 이 청산식은 최초한번만 적용이 되고 다음번에는 조건1이 만족되더라도 청산이 되지 않습니다.
같은 조건식을 여러번 적용하려면 어떻게 해야 하나요?
조건 1이 만족될때마다 순차적으로 3계약씩 청산하고 싶습니다.
2011-04-12
717
글번호 37523
답변완료
수식 수정 부탁드립니다.
다음 수식을 모의투자로 테스트하는데 오늘 신호가 나오고 주문이 들어가야 되는데 작동하지 않습니다.
왜 그런지 살펴봐 주시면 감사하겠습니다.
if stime < 150000 and MarketPosition == 0 Then{
if dayopen > DayLow(1) and L > DayLow(1)-PriceScale Then
Sell("s1",AtStop,DayLow(1)-PriceScale,1);
if dayopen < DayLow(1) and H < daylow(1) Then
Sell("s2",AtLimit,daylow(1),1);
}
2011-04-12
692
글번호 37522
답변완료
거래 횟수별 거래횟수, 승률, 수익을 보려면 어떻게 해야할까요?
아래와 같은 수식이 있다고 가정할 경우 메시지로그나 print등으로 아래의 4가지 조건의 데이터를 출력하려면 어떻게 해야할까요?
1차 진입시 매수의 거래횟수, 승률, 수익
1차 진입시 매도의 거래횟수, 승률, 수익
2차 진입시 매수의 거래횟수, 승률, 수익
2차 진입시 매도의 거래횟수, 승률, 수익
input : count(4);
var : c1(0);
c1=0;
for value1=0 to count {
if EntryDate(value1)==sdate then c1=c1+1;
}
if mp==0 && c1==0 && c1<count && stime>=090000 && stime<=143000 then {
if Bids > Asks then { buy("B"); }
if Asks > Bids then { sell("S"); }
}
if mp==0 && c1>=1 && c1<count && stime>=090000 && stime<=143000 then {
if Bids > Asks then { buy("B2"); }
if Asks > Bids then { sell("S2"); }
}
SetStopTrailing(1,2, pointstop);
SetStopTrailing(1,pointstop)
2011-04-12
727
글번호 37521
답변완료
시스템신호
1.시스템상 매수신호가 발생하였는데, 실제매수가 체결되지 않았을경우(옵션가격이
순간 급등해서, +5호가로도 체결안되었을 경우) 매도식에 if marketposition==1
라고 작성해도 실제매매와는 별개이므로, 매도식 조건이 충족되면 시스템은 매수잔고
가 있는 것으로 인식하고 매도주문이 발생한다 는 것으로 알고 있는데요.
2.실제매수잔고가 없는 상태에서 뜻하지 않게 옵션매도 실제주문이 체결될 경우 옵션
성격상 자칫하면 엄청난 손실로 이어져 한 번에 계좌폐쇄 까지 갈수 있는것인데
(옵션매수전용식을 쓰는 사람이면) 이를 방지할 수 있는 방법은 없나요?
3.매수설정창에서 시장가로 설정하여 매수되면 될텐데,이렇게 하면 또 상한가로 증거금
계산 잡혀서 매수가 안된다는데...매매설정창에서 시장가(매수) 설정 선택은 왜
있는지??
2011-04-11
718
글번호 37519
답변완료
수식 문의 드립니다.
문의 드릴 것이 두 가지 인데요.
첫 째는 다음 <수식1>에서 처음 진입가격이 0.5 미만이면 1.0 포인트 상승시마다 추가진입하고, 처음진입가격이 0.5 이상이면 최초진입 가격에서 20% 상승시 마다 추가진입하게끔 식을 세분화 하고 싶습니다. 수정된 수식좀 부탁드립니다.
<수식1>
#최초진입
if MarketPosition == 0 and C > 0.15 and daylow*1.3 < dayhigh and stime < 150000 Then{
buy("b",AtStop,daylow*1.3);
}
#추가진입
if countif(CurrentEntries < CurrentEntries[1],BarsSinceEntry) < 1 Then{
if MarketPosition == 1 and CurrentEntries == 1 and highest(H,BarsSinceEntry) < EntryPrice+0.1 Then
buy("BB",AtStop,EntryPrice+0.1);
if MarketPosition == 1 and CurrentEntries == 2 and highest(H,BarsSinceEntry) < EntryPrice+0.2 Then
buy("CC",AtStop,EntryPrice+0.2);
if MarketPosition == 1 and CurrentEntries == 3 and highest(H,BarsSinceEntry) < EntryPrice+0.3 Then
buy("DD",AtStop,EntryPrice+0.3);
if MarketPosition == 1 and CurrentEntries == 4 and highest(H,BarsSinceEntry) < EntryPrice+0.4 Then
buy("EE",AtStop,EntryPrice+0.4);
}
if MarketPosition == 1 Then
exitlong("bx",AtStop,AvgEntryPrice,"BB");
if MarketPosition == 1 Then
exitlong("cx",AtStop,AvgEntryPrice,"CC");
if MarketPosition == 1 Then
exitlong("dx",AtStop,AvgEntryPrice,"DD");
if MarketPosition == 1 Then
exitlong("ex",AtStop,AvgEntryPrice,"EE");
SetStopEndofday(143000);
두번 째는 오전 10시 이후에 당일 최고가(장 시작인 오전 9시 이후부터 모두 고려)를 돌파할 때 매수할 수 있게 <수식2> 수정 좀 부탁드립니다. 간단한 것 같은데 제가 만든 다음의 <수식2>는 자꾸 오류가 납니다. 참고로 1초봉 차트를 사용하고 있습니다.
<수식2>
#최초진입
if stime > 093000 and MarketPosition == 0 and C > 0.15 and C > dayhigh(1) and stime < 150000 Then{
buy("b",AtStop,c);
}
그럼 부탁드리겠습니다. 감사합니다.
2011-04-11
739
글번호 37518