커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
6394
글번호 230811
답변완료
문의드립니다
1,
3201창에서 시장검색 시가기준 순위검색식을 알고 싶습니다
2,
전일시가기준상승폭 10% 이상종목검색식을 알고싶습니다
2023-11-06
949
글번호 173735
답변완료
수식문의 드립니다
1.bollbandup(20.2)
2.5일 선행된 bollbandup(40.2)
1이 2를 골든크로스 하는식 부탁드립니다
2023-11-06
835
글번호 173734
답변완료
강화학습 C코드를 예스트레이더 코드로 변경하고자합니다.
항상 도움주셔서 감사드립니다.
아래와 같이 간단한 강화학습 Q learning C 코드를 주식 ETF 거래하는 예스트레이더 코드로 변경하고자 하는데 몇 일하다가 실패했습니다. TT
변경가능할까요?
NUM_STOCKS 는 주식의 갯수로 2이고 (가령 ETF 채권과 주식 2 종류로 거래를 하는 가정)
ACTION은 매수(=1) 아니면 매도(=0) 입니다.
항상 감사드립니다
=============================================================
#define NUM_STOCKS 2
#define DAYS 100
#define ACTIONS 2
#define ALPHA 0.2
#define GAMMA 0.8
double stock_prices[NUM_STOCKS][DAYS];
double q_values[NUM_STOCKS][ACTIONS];
int choose_action(int stock) {
return rand() % ACTIONS;
}
void calculate_q_values(int stock, int action, double reward, int next_stock) {
double max_next_action = 0;
for (int i = 0; i < ACTIONS; i++) {
if (q_values[next_stock][i] > max_next_action) {
max_next_action = q_values[next_stock][i];
}
}
q_values[stock][action] = (1 - ALPHA) * q_values[stock][action] + ALPHA * (reward + GAMMA * max_next_action);
}
int main() {
srand(time(0));
// Fill stock_prices with some random data or use actual stock prices data
// ...
// Initialize Q-values
for (int i = 0; i < NUM_STOCKS; i++) {
for (int j = 0; j < ACTIONS; j++) {
q_values[i][j] = 0;
}
}
// Training loop
for (int day = 0; day < DAYS - 1; day++) {
for (int stock = 0; stock < NUM_STOCKS; stock++) {
int action = choose_action(stock);
double reward = stock_prices[stock][day + 1] - stock_prices[stock][day];
int next_stock = (action == 0) ? stock - 1 : stock + 1;
calculate_q_values(stock, action, reward, next_stock);
}
}
// Print learned Q-values
printf("Learned Q-values:₩n");
for (int i = 0; i < NUM_STOCKS; i++) {
for (int j = 0; j < ACTIONS; j++) {
printf("%.2f₩t", q_values[i][j]);
}
printf("₩n");
}
return 0;
}
2023-11-05
1205
글번호 173733
답변완료
역배열이평 상승전환
아래 수식은 역배열이평 상승전환 검색 수식입니다.
여기에 전일에 MACD(7,16)가 0선돌파발생을 추가하고 싶습니다.
즉, 전일에 MACD(7,16) 0선돌파 + 금일에 역배열이평 상승전환 종목검색용 수식을
부탁드립니다.
==================================================================================
var : A1(0),A2(0),A3(0),A4(0),A5(0),A6(0),B1(False),B2(False),B3(False),B4(False);
VAR : AA1(0),AA2(0),AA3(0),AA4(0),조건(False);
A1=MA(C,3);
A2=MA(C,5);
A3=MA(C,8);
A4=MA(C,10);
A5=MA(C,20);
A6=MA(C,60);
B1=A1<A5 && A5<A6;
B2=A2<A5 && A5<A6;
B3=A3<A5 && A5<A6;
B4=A4<A5 && A5<A6;
IF B1 TheN {AA1=1;} ElsE {AA1=0;}
IF B2 TheN {AA2=1;} ElsE {AA2=0;}
IF B3 TheN {AA3=1;} ElsE {AA3=0;}
IF B4 TheN {AA4=1;} ElsE {AA4=0;}
조건=AA1[1]+AA2[1]+AA3[1]+AA4[1]>=1 && AA1+AA2+AA3+AA4==0 && C>O;
IF 조건 && !조건[1] TheN
Find(1);
2023-11-05
1056
글번호 173732
답변완료
오실레이터지표 문의드립니다.
60분 주문량을 기반으로하는 오실레이터 지표의 수식좀 부탁드립니다.
2023-11-05
1164
글번호 173731
답변완료
문의
마켓프로파일을 당일9시기준에서 당일8시45분기준으로 바꾸어주시길부탁드립니다
2023-11-05
1490
글번호 173730
답변완료
거래량 종가
If (C > O) or (C == O and C >= C[1]) Then
{
Plot1(V, "상승거래량");
Plot2(0, "하락거래량");
}
Else
{
Plot1(0, "상승거래량");
Plot2(V, "하락거래량");
}
거래량을 초봉 막대그래프로 보면, 종가가 너무 커서 나머지는 상대적으로 잘 안보입니다.
키높이를 맞추기위해
1. 8시46분부터 15시 35분까지만 출력. 이런식으로 시간대를 설정하여,선물 시초가와 종가를 아예 안보이게 함.
2. 종가만 막대그래프를 완전히 삭제하고 나머지만 출력. (가능하면 시가도 삭제에 포함)
3. 거래량이 2000을 초과하면 막대 표시없이 공란으로하여 2000 이하의 작은것만 표시.
4. 1번과 3번 두 식을 하나로 통합.
5. 2번과 3번 두 식을 하나로 통합. 감사합니다.
2023-11-06
1160
글번호 173729
답변완료
재질문
안녕하세요
수식 감사드립니다.
그런데 옵션시뮬레이터에 Bdate 함수가 없는 것 같아요..
그리고 혹시 예를들어 10월26일날 값을 10월28일날 10분봉차트에 표시할 수 있을까요?
제 질문에 대한 내용을 그림으로 그려서 추가 첨부했습니다.
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 수식 좀 부탁드려요~
> 안녕하세요
예스스탁입니다.
1번과 같이 작성하시면 첫봉의 값과 현재봉의 값을 나누게 됩니다.
항상 마지막봉시점에서만 출력되기를 원하시면 2번식 이용하시면 됩니다.
2번식은 당일에는 마지막봉이 생성되지 않으므로 출력되지 않습니다.
1
var1 = ma(C,20);
if Bdate != Bdate[1] Then
value1 = var1;
Plot1(value1/var1);
2
var1 = ma(C,20);
if Bdate != Bdate[1] Then
value1 = var1;
if NextBarSdate != sDate Then
{
Plot1(value1/var1);
}
즐거운 하루되세요
> 월척 님이 쓴 글입니다.
> 제목 : 수식 좀 부탁드려요~
> 항상 감사합니다
10분봉 기준으로 당일 첫봉의 20이동평균선 값을
10분봉 기준으로 당일 마지막봉의 20이동평균선 값으로 나눈 것을 지표로 차트에 도시하고 싶습니다.
이렇게 해서 차트상에 당일 뿐 아니라 차트에 보이는 모든 날짜에 표시되게 하고 싶습니다.
2023-11-04
961
글번호 173728
답변완료
수식 부탁드립니다.
10분봉 기준
현재봉부터 240봉전 사이에만
CCI(20)이 0을 Crossup하면 매수
CCI(20)이 0을 Crossdown하면 매도
하는 수식 부탁드립니다~
2023-11-04
861
글번호 173727