// strategy.js import logger from './logger.js'; import {OpenAI} from "openai"; const openai = new OpenAI({ baseURL: 'https://openrouter.ai/api/v1', apiKey: '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', }); export async function aiSignal(bars) { if (bars.length < 20) return null; // const time = '15분' const time = '1시간' console.log(Date.now()) const completion = await openai.chat.completions.create({ model: 'qwen/qwen3-235b-a22b-2507', messages: [ { role: 'user', content: `당신은 코인 매매 전문 트레이너 입니다. 매매 방법은 스윙매매 입니다. 1시간 봉으로 매매 하는 만큼 큰 수익을 얻어야 합니다. 너무 무리 하지 않는 선에서 제어가 필요합니다. 아래에 제공 되는 json ${time}봉 데이터를 보고 여러지표(macd, rsi, ema, 다이버전스, ovm, vwap) 등 을 대입하여 포지션, 타점, 스톱로스, 테이크피로핏을 정의 해줘야합니다 모든 대답은 간결하게 {side: 포지션, price: 진입가, sl: 스탑로스, tp: 테이크프로핏, resaon: 간단한이유} json 형태로 대답하세요. 포지션은 SHORT, LONG, HOLD 포지션이 LONG, SHORT 일때는 전체적인 추세를 보고 진입가 손절 익절 금액을 채워주세요. reason 에는 포지션을 지지하는 이유를 요약 하여 채워주세요. t: 시간 o: 시작가 h: 최고가 l: 최저가 c: 종료가 v: 볼륨 ${JSON.stringify(bars)} `, }, ], }); console.log(Date.now()) const msg = completion.choices[0].message.content logger.info(msg); const sig = JSON.parse(msg) return sig; }