[TOC]

암호화폐 시장은 매일 다른 양상을 보입니다. 오늘은 비트코인이 상승세를 주도하고, 내일은 이더리움이 그 자리를 이어받으며, 그 다음 날에는 ZEC처럼 잘 알려지지 않은 코인조차 상승세로 돌아설 수 있습니다. 다양한 코인들이 오르내림을 반복하며 관심의 방향이 너무나 빠르게 바뀌어 어지러울 정도입니다. 기관 투자자들은 24시간 내내 시장을 모니터링하는 전문 팀과 내부 정보를 활용하여 선제적으로 포지션을 취할 수 있지만, 개인 투자자들은 이러한 급격한 시장 변동 때문에 기회를 놓치거나, 최고점에 매수했다가 매도 함정에 빠지는 경우가 많습니다.
전통적인 로테이션 전략은 금융 분야에서 오랫동안 사용되어 온 고전적인 전략입니다. 기관 투자자들은 이를 활용하여 섹터 및 자산을 순환 투자하고 좋은 성과를 거두고 있습니다. 하지만 전통적인 로테이션 전략은 거시적인 관점을 요구한다는 문제가 있습니다. 어떤 섹터가 상승할지, 언제 투자 대상을 바꿔야 할지 판단해야 하는 것이죠. 내부 정보를 얻을 수 없고 반응 속도도 느린 개인 투자자에게는 직감에 의존하는 것이 기본이며, 성공률은 예상대로 낮습니다. 그렇다면 인공지능(AI)이 이 역할을 대신한다면 어떨까요? AI는 기술적 지표를 모니터링하고, 뉴스를 분석하며, 보유 자산을 24시간 내내 분석할 수 있습니다. 감정적인 변동에 따라 충동적인 결정을 내리지 않고도 말이죠. 오늘은 Inventor Quantitative Platform의 워크플로우를 활용하여 이러한 AI 기반 로테이션 시스템을 구현하고, 그 전체 구현 로직을 여러분과 공유하겠습니다.

이 AI 기반 휠 시스템의 핵심 설계 개념은 다음과 같습니다.기술적 지표로 선별하고, 뉴스 분석으로 검증하고, 인공지능이 최종 검증을 하도록 하세요.전체 시스템은 세 가지 핵심 모듈로 나뉩니다.
이 시스템은 먼저 다기간 이동 평균 시스템을 사용하여 유동성이 높은 각 암호화폐(24시간 거래량 기준으로 정렬됨)에 점수를 매깁니다. 이 점수 시스템은 세 가지 차원으로 구성됩니다.
이동평균 정렬 패턴(편곡 점수: -4 ~ +4)
이동평균 발산 간격(gapScore)
이동평균 시계열 변화(타임시리즈스코어: -4 ~ +4)
최종 종합 점수 계산 공식:
\[ 점수 = 확산 간격 × 배열 패턴 점수 × 시계열 변동 점수 \]
이 공식의 매력은 다음과 같습니다.세 가지 지표가 모두 동시에 맞아떨어질 때에만 점수가 의미를 갖게 됩니다.이동평균선들이 잘 정렬되어 있지만 그 간격이 좁아지고 있다면 추세가 약화되고 있음을 나타내며, 점수는 그다지 높지 않을 것입니다.
1. 다중 사이클 설계
var s = exchange.GetRecords(processedSymbol, wheelPeriod / 4); // 短期
var ms = exchange.GetRecords(processedSymbol, wheelPeriod / 2); // 中短期
var ml = exchange.GetRecords(processedSymbol, wheelPeriod * 2); // 中长期
var ls = exchange.GetRecords(processedSymbol, wheelPeriod * 4); // 长期
wheelPeriod=60분인 경우 실제 시간 범위는 15분, 30분, 120분, 240분으로, 단기, 중기 및 장기 추세를 모두 포함합니다.
2. 배열 패턴에 대한 점수 계산 논리
if (bullCount == 3) {
arrangementScore = 4; // 完美多头排列
} else if (bearCount == 3) {
arrangementScore = -4; // 完美空头排列
} else if (bullCount == 2) {
// 连续的两个条件得分更高
if ((compare1 > 0 && compare2 > 0) || (compare2 > 0 && compare3 > 0)) {
arrangementScore = 3;
} else {
arrangementScore = 2;
}
}
여기서의 설계 원칙은 이동평균선을 연속적으로 배열하는 것이 흩어진 형태로 배열하는 것보다 더 높은 점수를 받는다는 것입니다. 왜냐하면 연속적인 배열은 더 명확한 추세를 나타내기 때문입니다.
3. 종합 점수의 비선형 설계
if (gapScore > 0) {
comprehensiveScore = gapScore * arrangementScore * timeSeriesScore;
} else if (gapScore < 0) {
comprehensiveScore = gapScore * Math.abs(arrangementScore) * Math.abs(timeSeriesScore);
}
이 설계는 다음을 보장합니다:
시스템은 자동으로 두 가지 통화 유형을 걸러냅니다.
하지만 여기에는 핵심적인 디자인 요소가 있습니다.이미 특정 코인에 장기 포지션을 보유하고 있다면, 해당 코인이 상위 5위 안에 들지 않더라도 시스템은 이를 긍정적인 그룹에 추가합니다.포지션을 보유하지 않는 경우에도 마찬가지입니다. 이는 AI가 사용자의 보유 자산을 지속적으로 모니터링하여 손절매 또는 포지션 청산이 필요한지 판단할 수 있도록 하기 위함입니다.
기술적 신호만으로는 충분하지 않습니다. 시장을 이해하는 것도 중요합니다.왜진행 방식은 다음과 같습니다. 시스템은 CryptoCompare API를 통해 각 암호화폐에 대한 최근 뉴스 5개를 자동으로 가져옵니다. 여기에는 프로젝트 진행 상황, 기관 활동, 규제 관련 소식 등이 포함될 수 있습니다.
뉴스 보도의 역할은 다음과 같습니다.기술 신호의 신뢰성을 검증하십시오:
뉴스 가져오기 과정에서 지연이나 누락이 발생할 수 있다는 점(API 제한, 덜 인기 있는 암호화폐 등)을 유의하시기 바랍니다. 하지만 이 시스템의 설계 원칙은 다음과 같습니다.뉴스는 보조적인 것이지 필수적인 것이 아닙니다.뉴스 정보가 없을 경우, AI는 “뉴스 없음, 순전히 기술적 판단”이라고 표시한 후 기술적 지표와 보유 자산을 기반으로 결정을 내립니다.
이것이 전체 시스템의 핵심입니다. AI가 전략의 주요 실행자는 아니지만…감독 컨설턴트—기술적 신호로는 포착할 수 없는 위험을 식별하기 위해 중요한 순간에 추가적인 판단 기준을 제공합니다.
시스템은 인공지능에게 다음과 같은 모든 정보를 알려줄 것입니다.
AI는 세 가지 핵심 시나리오를 처리해야 합니다.
시나리오 1: 미결제 포지션 없음 → 포지션 개설 여부 결정
| 기술적 신호 강도 | 뉴스 보도 | 위험 | AI 의사 결정 |
|---|---|---|---|
| 매우 높음 (절대값 > 0.05) | 지지/중립/뉴스 없음 | 없음 | 길게 열기/짧게 열기 |
| 강한 | 모순 | 없음 | 두고 봅시다 |
| 약함(<0.02) | 어떤 | 없음 | 두고 봅시다 |
시나리오 2: 동일 방향으로 포지션을 유지하는 경우 → 계속 보유할지 여부 결정
여기서 “같은 방향”이란 포지션의 방향이 기술적 신호와 일치함을 의미합니다(예: 롱 포지션을 보유하고 있고 기술 지표가 상승 추세를 나타내는 경우). 시스템은 “롱 포지션을 보유하고 있지만 지표 강도가 상위권에 들지 않음”이라고 명시적으로 표시하는데, 이는 해당 롱 포지션이 여전히 상승 포지션 목록에는 있지만 상위 5위권에는 들지 못하고 추세가 약화되고 있음을 의미합니다.
| 신호 상태 | 뉴스 보도 | 손익 | AI 의사 결정 |
|---|---|---|---|
| 처음 5개/마지막 5개 | 안정적/지원됨/새로운 소식 없음 | 어떤 | 잡고 있다 |
| 처음 5개/마지막 5개 | 반전/부정적 요인 | 이익 | 평지 |
| 상위권이 아님 | 안정적/새로운 소식 없음 | 이익 | 보유(관찰) |
| 상위권이 아님 | 안정적/새로운 소식 없음 | 손실 | 포지션을 청산합니다(손절매). |
| 상위권이 아님 | 반전/부정적 요인 | 어떤 | 평지 |
시나리오 3: 포지션 반전 → 포지션을 청산/반전할지 여부 결정
이것은 AI 관리자입니다.핵심 가치 시나리오역포지션이란 기술적 신호와 반대 방향으로 보유하는 포지션을 의미합니다(예: 기술적 지표가 하락세로 전환되었음에도 불구하고 매수 포지션을 보유하는 것).
| 점수의 절댓값 | 뉴스 보도 | AI 의사 결정 |
|---|---|---|
| 강함 (>0.05) | 반전 확인 | 역포지션 (이전 포지션을 청산한 후 역포지션을 개설하는 것) |
| 강함 (>0.05) | 중립/뉴스 없음 | 백핸드 |
| 강함 (>0.05) | 모순 | 포지션 청산 (기술적 요인과 뉴스 내용이 상충될 때 보수적인 접근 방식) |
| 중간 (0.02-0.05) | 반전 확인 | 백핸드 |
| 중간 (0.02-0.05) | 중립/뉴스 없음 | 근접 위치 (신호가 충분히 강하지 않음) |
| 중간 (0.02-0.05) | 모순 | 평지 |
| 약함(<0.02) | 어떤 | 보류(관찰, 신호가 너무 약함) |
백핸드 조작에 대한 엄격한 조건(동시에 여러 조건이 충족되어야 합니다):
방향이 틀렸다면 수정하십시오. 강한 신호 + 확인된 반전 = 과감하게 포지션을 반전시키십시오. 강한 신호 + 반대되는 뉴스 = 신중하게 포지션을 청산하십시오. 중간 신호 = 뉴스가 반전을 확정할 때만 포지션을 반전시키고, 그렇지 않으면 포지션을 청산하십시오. 약한 신호 = 상황을 계속 관찰하고 섣불리 움직이지 마십시오.
AI가 출력하는 결정 형식은 다음과 같습니다.
[
{
"symbol": "BTCUSDT",
"currentPosition": "无持仓",
"score": 0.0856,
"newsAnalysis": "机构增持,生态扩张",
"overallJudgment": "技术多头强劲,新闻面支持,开多",
"decision": "开多"
},
{
"symbol": "ETHUSDT",
"currentPosition": "持有空仓",
"score": 0.0623,
"newsAnalysis": "质押增加,资金流入",
"overallJudgment": "反向持仓亏损,技术已转多,止损",
"decision": "平仓"
}
]
인공지능이 결정을 내리면 시스템이 자동으로 거래를 실행합니다. 이 과정에서…고정금액 거래기구:
각 거래 금액을 100 USDT로 설정했다고 가정하면, 코인 가격이 100 USDT이든 10,000 USDT이든 관계없이 시스템은 100 USDT를 기준으로 개설해야 할 계약 수를 계산합니다. 계산 공식은 다음과 같습니다.
合约张数 = 金额(U) / 当前价格 / 合约面值(CtVal)
예를 들어:
시스템이 자동으로 처리합니다.
이렇게 하면 두 가지 이점이 있습니다.
거래가 실행된 후에도 위험 관리가 필요합니다. 이 시스템은 다음과 같은 방법을 사용합니다…독립적으로 작동하는 트레일링 스톱이는 주요 전략과는 별개이며, 초당 한 번씩 위치에 대한 고빈도 점검을 수행합니다.
트레일링 스톱은 단순히 고정된 스톱이 아니라 다음과 같은 의미입니다.미실현 이익을 보호하고 수익을 극대화하세요.。
워크플로우:
코드 구현:
function monitorPositionWithTrailingStop(coin) {
const pos = getPosition(coin); // 获取持仓
if (!pos) return;
const currentPnl = calculatePnl(pos); // 当前盈亏百分比
// 获取历史最高盈利
const symbolKey = `${coin}_USDT.swap_maxprofit`;
let maxProfit = _G(symbolKey);
// 如果当前盈利更高,更新最高盈利
if (maxProfit === null || currentPnl > maxProfit) {
maxProfit = currentPnl;
_G(symbolKey, maxProfit);
Log(`📈 ${coin} 更新最高盈利:${(maxProfit * 100).toFixed(2)}%`);
}
// 计算回撤
const drawdown = maxProfit - currentPnl;
// 触发止损
if (drawdown >= CONFIG.TRAILING_STOP_PERCENT) {
closePosition(coin, pos, "移动止损");
_G(symbolKey, null); // 清除记录
}
}
암호화폐 시장은 변동성이 매우 크기 때문에 주요 전략은 4시간에 한 번만 실행될 수 있습니다(암호화폐를 재선택하고 개시 및 청산 포지션을 결정하기 위해). 하지만 손절매 주문은 반드시 설정해야 합니다.실시간 보호4시간 후에 확인하면 수익이 이미 손실로 돌아갔을 수도 있습니다. 따라서 손절매 시스템은 메인 전략과 병렬로 15초마다 실행되는 독립적인 워크플로입니다.
이 전략은 자동으로 실행되지만, 어떤 작업을 수행하는지 알아야 합니다. 이 시스템은 세 개의 모니터링 테이블로 설계되었습니다.

전체적인 손익과 시스템 상태를 한눈에 확인할 수 있습니다.

이 표는 다음을 알려줍니다.

이 표는 다음을 보여줍니다.
이 세 개의 표를 통해 시스템이 현재 무엇을 하고 있는지, 왜 그렇게 하는지, 그리고 그 결과가 무엇인지 언제든지 확인할 수 있습니다.
완벽한 전략은 없으며, 이 시스템에도 명백한 한계가 있습니다.
대형 모델 기능은 매우 강력하고 대부분의 경우 성능이 우수하지만,극단적인 시장 상황에서는 오판이 발생할 수 있습니다.。
예를 들어:
결국 AI는 과거 데이터를 통해 학습하기 때문에 전례 없는 상황(블랙 스완 사건)에 직면했을 때 혼란스러워할 수 있습니다.
이 시스템은 공개 뉴스 API에서 데이터를 수집합니다. 주요 뉴스 기사가 발표된 직후 몇 분 동안의 데이터는 수집하지 못할 수 있으며, 데이터가 수집될 때쯤에는 가격이 이미 변동되었을 수도 있습니다.
예를 들어:
이는 모든 자동화 시스템에서 흔히 발생하는 문제입니다. 내부 정보는 항상 공개 정보보다 훨씬 빠르게 입수됩니다.
이동평균과 추세는 모두 다음을 기반으로 합니다.과거 가격계산은 항상 예상치 못한 상황에 대한 느린 대응을 초래합니다.
예를 들어:
그러므로 이 시스템이 더 적합합니다.트렌드를 따라가세요적합하지 않음전환점을 포착하다이 전략의 장점은 추세가 형성된 후 꾸준히 추종할 수 있다는 것이지만, 바닥에서 사거나 최고점에서 팔 수는 없다는 것입니다.
고정 금액 거래는 관리 가능한 위험을 제공하지만 다음과 같은 의미도 내포합니다.
계좌 잔액이 10,000 USDT에서 50,000 USDT로 증가하면 이론적으로 거래 금액도 증가해야 하지만, 시스템에서 자동으로 조정되지는 않습니다. 수동으로 수정해야 합니다.$vars.Amount변하기 쉬운.
coinNumber선택된 유통량이 많은 통화 수wheelPeriod이동평균 계산 기간 매개변수meanPeriod이동평균 기간Amount거래당 금액lossPercent트레일링 스톱 비율이 시스템을 개선할 수 있는 부분은 여전히 많습니다.
현재 금액은 고정 금액이며, 다음과 같이 변경될 수 있습니다.
하나의 대형 모델에 의존하는 대신, 3~5개의 모델을 사용하여 동시에 판단을 내리세요.
거래는 대다수의 모델이 동의할 때만 실행되므로 단일 모델의 오판 위험이 줄어듭니다.
가격 및 뉴스 외에도 다음 정보를 추가할 수 있습니다.
이러한 데이터는 기술적 지표보다 먼저 추세 변화를 반영하는 경우가 많습니다.
현재 트레일링 스톱은 고정된 백분율로 설정되어 있으며, 다음과 같이 최적화할 수 있습니다.
각 거래의 손익을 기록하고 분석하십시오.
과거 데이터를 활용하여 매개변수를 최적화하세요.
이것으로 AI 기반 로테이션 시스템의 논리에 대한 완벽한 설명이 끝났습니다. 기술 선별부터 뉴스 검증, AI 기반 의사 결정부터 거래 실행, 트레일링 스톱 로스 주문부터 시각적 모니터링까지, 각 단계에는 고유한 설계 철학이 담겨 있습니다.
하지만 다시 한번 강조해야 할 점은 다음과 같습니다.전략은 단지 도구일 뿐이며, 시장은 복잡하고 예측 불가능한 요소가 너무 많습니다.。
이 시스템은 다음과 같은 기능을 수행할 수 있습니다.
이 시스템은 다음 기능을 수행할 수 없습니다.
우리가 해야 할 일은 이 도구를 최대한 활용하고, 우리 자신의 위험 감수 능력, 자금 관리 능력, 그리고 사고방식을 결합하여 완벽한 트레이딩 시스템을 구축하는 것입니다. 마지막으로, 이 시스템의 전체 소스 코드는 개발자의 양적 거래 플랫폼에 오픈 소스로 공개되어 있습니다. 질문이나 개선 제안이 있으시면 커뮤니티에서 자유롭게 토론해 주세요. 함께 양적 트레이딩의 가능성을 탐구하고 변동성이 큰 시장에서 우리만의 리듬을 찾아봅시다.
위험 경고이 글은 기술적 정보 공유만을 목적으로 하며 투자 조언을 구성하지 않습니다. 암호화폐 거래에는 상당한 위험이 따르므로 신중하게 결정하고 자신의 능력 범위 내에서 투자하십시오.
이 문서에 첨부된 코드는 오픈 소스입니다. 전체 워크플로를 보려면 Inventor Quantitative Platform에 접속하세요: https://www.fmz.com/strategy/524103