커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
3478
글번호 230811
답변완료
재문의 드립니다.
//author Jurij 2015
//default moving average period is 4H because '4h' is missing in the resolution 드롭 down list
study("Multi Time Frame Exponential Moving Average", "MTF EMA", overlay=true)
ma_len = input(title="Length", type=integer, defval=100)
src = input(title="Source", type=source, defval=close)
ma_offset = input(title="Offset", type=integer, defval=0)
res = input(title="Resolution", type=resolution, defval="240")
htf_ma = ema(src, ma_len)
out = security(tickerid, res, htf_ma)
plot(out, color=red, offset=ma_offset)
트레이딩뷰 수식입니다.
이 수식으로 예전에 만들어준 수식이
Input : ntime(240),ma_len(100);
var : S1(0),D1(0),TM(0),TF1(0);
Var : Ep1(0), JISU1(0), PreJISU1(0);
Ep1 = 2/(ma_len+1);
if Bdate != Bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = sdate;
}
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
TF1 = TM%ntime;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and ntime > 1 and TF1 < TF1[1]) or
(Bdate == Bdate[1] and ntime > 1 and TM >= TM[1]+ntime) or
(Bdate == Bdate[1] and ntime == 1 and TM > TM[1]) Then
{
value1 = value1+1;
PreJISU1 = JISU1[1];
}
if value1 <= 1 then
{
JISU1 = C;
}
else{
JISU1 = C * EP1 + PreJISU1 * (1-EP1);
}
plot1(JiSu1);
}
이건데 캔들 갯수를 늘리면 선이 고정이 안되고 움직임니다.
2000개로 했을때와
10000개로 했을때의 선이 다르게 나옵니다.
캔들 갯수를 늘려도 고정이 되도록 가능할까요?
2023-11-06
1057
글번호 173740
답변완료
수식요청
안녕하세요
수식부탁드림니다
매수식
볼밴 상한선 돌파시 매수
상한선 위에선 매수유지
청산 볼밴상한선을 하락(음봉)시 청산
매도식
매수의 반대
2023-11-06
758
글번호 173737
답변완료
문의드립니다
1,
3201창에서 시장검색 시가기준 순위검색식을 알고 싶습니다
2,
전일시가기준상승폭 10% 이상종목검색식을 알고싶습니다
2023-11-06
869
글번호 173735
답변완료
수식문의 드립니다
1.bollbandup(20.2)
2.5일 선행된 bollbandup(40.2)
1이 2를 골든크로스 하는식 부탁드립니다
2023-11-06
793
글번호 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
1027
글번호 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
1006
글번호 173732
답변완료
오실레이터지표 문의드립니다.
60분 주문량을 기반으로하는 오실레이터 지표의 수식좀 부탁드립니다.
2023-11-05
1122
글번호 173731
답변완료
문의
마켓프로파일을 당일9시기준에서 당일8시45분기준으로 바꾸어주시길부탁드립니다
2023-11-05
1446
글번호 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
1070
글번호 173729