커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
2670
글번호 230811
답변완료
수고하십니다.예비신호에 대하여
빠른 답변에 감사드립니다.
예비신호 발생시에 변수로 예비신호가 나왔다는것을 저장하는 방법이 있나요?
2021-11-23
638
글번호 153830
답변완료
RSI
=====================================================================
Inputs: Length(NumericSimple);
Variables: Counter(0), DownAmt(0), UpAmt(0), UpSum(0), DownSum(0), UpAvg(0), DownAvg(0);
If CurrentBar == 1 AND Length > 0 Then Begin
UpSum = 0;
DownSum = 0;
For Counter = 0 To Length - 1 Begin
UpAmt = C[Counter] - C[Counter+1];
If UpAmt >= 0 Then
DownAmt = 0;
Else Begin
DownAmt = -UpAmt;
UpAmt = 0;
End;
UpSum = UpSum + UpAmt;
DownSum = DownSum + DownAmt;
End;
UpAvg = UpSum / Length;
DownAvg = DownSum / Length;
End
Else
If CurrentBar > 1 AND Length > 0 Then Begin
UpAmt = C[0] - C[1];
If UpAmt >= 0 Then
DownAmt = 0;
Else Begin
DownAmt = -UpAmt;
UpAmt = 0;
End;
UpAvg = (UpAvg[1] * (Length - 1) + UpAmt) / Length;
DownAvg = (DownAvg[1] * (Length - 1) + DownAmt) / Length;
End;
If UpAvg + DownAvg <> 0 Then
RSI = 100 * UpAvg / (UpAvg + DownAvg);
Else
RSI = 0;
==========================================================================
RSI 지표 구성이 위와 같습니다.(예스랭귀지 내용 복사했습니다.)
스팟에서 RSI 지료를 쓰려고 하는데, 확장차트에서 할 수 없는 상황이 되었습니다.
위의 식을 스팟에서 구현하도록 도움 부탁드리겠습니다.
CurrentBar를 어떻게 처리할 지 몰라서 여쭤봅니다.
확장 차트에서 C[Counter] ==> CT[i].GetClose(Counter) 이런 식으로 구성할 예정입니다.
2021-11-23
496
글번호 153829
답변완료
지표 수식 부탁드립니다.
분봉에서
상한가 마감한 다음날
고가 대비 -10, -15, -20, -25, -30가 선으로 나타나게끔
지표 수식 부탁드립니다.
감사합니다.
2021-11-23
622
글번호 153827
선물대장 님에 의해서 삭제되었습니다.
2021-11-23
0
글번호 153824
답변완료
문의 드립니다.
당일 시가 기준으로 시가 위이면 1번 적용
당일 시가 기준으로 시가 아래면 2번 적용
그리고 매매 수량을 원하는 대로 입력할 수 있을까요?
현재는 하나만 가능한데요...
부탁드립니다.
1번
Input : Period(10), MultiD(2);
var : BBmd(0),BBup(0),BBdn(0);
BBmd = ma(C,Period);
BBup = BollBandUp(Period,MultiD);
BBdn = BollBandDown(Period,MultiD);
if C > BBmd and crossup(C[1],BBmd[1]) Then
buy();
input : P(10);
var1 = ma(C,P);
if CrossDown(c,var1) Then
ExitLong();
2번
Input : Period(100), MultiD(2);
var : BBmd(0),BBup(0),BBdn(0);
BBmd = ma(C,Period);
BBup = BollBandUp(Period,MultiD);
BBdn = BollBandDown(Period,MultiD);
if C < BBmd and CrossDown(C[1],BBmd[1]) Then
sell();
input : P(10);
var1 = ma(C,P);
if crossup(c,var1) Then
ExitShort();
2021-11-23
683
글번호 153823
안미남 님에 의해서 삭제되었습니다.
2021-11-23
0
글번호 153822
답변완료
순서 질문드립니다.
C2 = Data2(c);
C3 = Data3(c);
C4 = Data4(c);
위 구문을 아래처럼 놓을때랑
value1 위에 놓을때랑 수익이 달라지는데,,,
정석이 어떻게되는지 궁금합니다.
-------------------------------
input : StartTime(93000),EndTime(144000);
Input : s1(14), s2(198);
input : 손절(1.2),익절(1.2);
input : 최소이익(1.0),손실범위(0.1);
var : Tcond(false,Data1);
var : C2(0,Data2);
var : C3(0,Data3);
var : C4(0,Data4);
value1 = ma(c3,s1);
Value2 = ma(c3,s2);
if (sdate != sdate[1] and stime >= EndTime) or
(sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then
Tcond = False;
if (sdate != sdate[1] and stime >= StartTime) or
(sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then
Tcond = true;
C2 = Data2(c);
C3 = Data3(c);
C4 = Data4(c);
if Tcond == true Then
{
if CrossUp(value1,Value2)
then
Buy();
if CrossDown(value1,Value2)
then
Sell();
}
SetStopEndofday(EndTime);
SetStopProfittarget(익절,PointStop);
SetStoploss(손절,PointStop);
SetStopContract();#생략가능
SetStopTrailing(손실범위 , 최소이익 , PointStop);
2021-11-23
874
글번호 153820
답변완료
다시 부탁드립니다
안녕하세요
예스스탁입니다.
문의하신 내용은 각진입별로 진입명을 부여하고
해당 진입명을 청산함수에 지정해서 청산하게 하셔야 합니다.
if A조건 Then
Buy("A");
if A조건 Then <== B 조건이지요?
Buy("B");
if A조건 Then <== C 조건이지요?
Buy("C");
if A조건 Then <== d 조건이지요?
Buy("D");
if MarketPosition == 1 Then
{
if A1조건 Then <=== 여기부터 이해 안 됩니다
ExitLong("A1",OnClose,DEF,"a"); 다시 좀 부탁드립니다
if A2조건 Then 수고하세요~~
ExitLong("A2",OnClose,DEF,"a");
if A3조건 Then
ExitLong("A3",OnClose,DEF,"a");
if A4조건 Then
ExitLong("A4",OnClose,DEF,"a");
}
즐거운 하루되세요
> 안미남 님이 쓴 글입니다.
> 제목 : 늘 수고 많습니다
> 식이 a b c d 로 4개의 식이 있습니다
A 식으로 들어간건 A1 청산
B 식으로 들어간건 B1 청산
C 식으로 들어간건 C1 청산
D 식으로 들어간건 D1 청산 으로 하고 싶습니다
예를 들어 만들어 주시길 부탁드립니다
늘 고맙습니다
2021-11-23
571
글번호 153819
knb 님에 의해서 삭제되었습니다.
2021-11-23
11
글번호 153818