[TOC]

이 글에서 소개하는 전략은 @Gianbin 님이 오픈소스로 공개하고 공유해 주신 것으로, 저희가 이전에 사용했던 이중 거래 워크플로 프레임워크를 수정한 버전입니다. 아낌없는 공유에 감사드립니다. 전략의 전체 로직 분석은 아래에서 확인하실 수 있습니다.
암호화폐 세계에서는 하루 만에 30~40%, 심지어 두 배로 가격이 급등하는 “괴물 코인”이 자주 등장합니다. 이러한 코인들은 매력적으로 보이지만…상승폭이 클수록 하락폭도 더 큰 경향이 있습니다.。
이 전략은 이러한 특징을 활용합니다.
전반적인 펀드 운용 원칙:고정 위치 크기는 50U이며, 전체 위치 크기는 500U 이내로 제어됩니다.위험은 비교적 통제 가능합니다.

전략은 다음과 같이 나뉩니다.두 개의 독립적인 프로세스각각은 고유한 역할을 수행합니다.
주요 거래 프로세스(15분마다)최고 상승 종목 목록 필터링 → 데이터 수집 → AI 분석 → 포지션 실행
위험 관리 모니터링 프로세스(5초마다)실시간 시장 모니터링 → 수익 및 손절매 감지 → 역피라미드형 포지션 평균화 → 시각적 대시보드
전략적 결정은 점진적으로 진행될 수 있지만, 위험 통제 대응은 신속해야 합니다. 이것이 바로 두 라인의 트리거 빈도가 크게 다른 이유입니다.
이 시간 설정 트리거는 15분마다 작동하여 바이낸스에서 모든 USDT 무기한 계약 데이터를 가져와 24시간 동안 10% 이상 상승한 상위 20개 암호화폐를 선택합니다. 또한 중복 진입을 방지하기 위해 이미 보유한 포지션은 자동으로 제외합니다.
// 核心筛选逻辑(节选)
const minChange = $vars.minChange || 0.1; // 默认涨幅阈值10%
const topN = $vars.topN; // 取前N名,默认20
// 过滤USDT永续合约,计算24h涨幅
const change24h = open24h > 0 ? (price - open24h) / open24h : 0;
if (change24h < minChange) continue; // 低于阈值直接跳过
// 排除已持仓币种
if (excludeHolding && holdingSymbols.indexOf(symbol) !== -1) continue;
// 按涨幅降序,取前N名
usdtPairs.sort((a, b) => b.change24h - a.change24h);
const topGainers = usdtPairs.slice(0, topN);
이 단계는 가장 변동성이 크고 예측 불가능한 코인을 선별하여 향후 사용을 위해 따로 보관하는 “예비 선별”과 같습니다.
단순히 가격 인상만 보는 것으로는 충분하지 않습니다. 시스템은 AI 분석을 위해 다음과 같은 데이터도 동시에 수집합니다.
| 데이터 차원 | 의미 | 사용 방법 |
|---|---|---|
| 미결제약정(OI) | 선물 시장의 총 미결제 약정 | 유동성 및 시장 심리 측정 |
| 자금 조달 금리 | 롱 포지션과 숏 포지션 간의 지불 비율 | 공매도 시장이 과열되었는지 판단하십시오. |
| 시가총액(MCap) | 유통 시가총액 | OI/MCap 레버리지 비율을 계산하세요 |
| 캔들스틱 데이터 | 일일 차트 OHLCV | 기술적 분석 |
OI/MCap 비율이 핵심 지표입니다.이 비율이 높을수록 시장 레버리지가 높아지고, 마진콜 위험이 커지며, 공매도에서 이길 확률이 높아집니다.。
// 通过币安API获取持仓量(节选)
const ret = exchange.IO("api", "GET", "/fapi/v1/openInterest", "symbol=" + symbol);
if (ret && ret.openInterest) {
openInterest = parseFloat(ret.openInterest) * coin.price; // 折算成USD
}
// 计算OI/MCap比率
const oiMcapRatio = marketCap > 0 ? openInterest / marketCap : 0;
시가총액 데이터는 CoinMarketCap API에서 가져와 외부 인터페이스에 대한 빈번한 호출을 방지하기 위해 30분 동안 로컬에 캐시됩니다.
이것이 전체 전략의 핵심입니다. 데이터를 수집한 후, 이를 패키징하여 AI(여기서는 AI가 사용됨)에 전송합니다.x-ai/grok-4.1-fast점수는 10점 만점으로 부여되며, 8점 이상을 받은 사람만 채용 후보자 명단에 포함됩니다.
| 요인 | 무게 | 점수 계산 로직 |
|---|---|---|
| OI/MCap 비율 | 3.5 | 35% 이상이면 완벽한 점수이며, 레버리지가 높을수록 위험합니다. |
| 촛대 패턴 | 2.8 | 긴 위쪽 그림자/높은 도지 캔들스틱 및 기타 고점 형성 신호는 높은 점수를 받습니다. |
| 채용 공고 | 1.5 | 유동성이 좋을수록 점수가 높아집니다. |
| 거래량 | 1.5 | 거래 활동이 활발할수록 점수가 높아집니다. |
| 증가하다 | 0.5 | 초기 심사는 통과했지만, 차별성은 낮은 수준입니다. |
| 자금 조달 금리 | 0.2 | 황소들이 더 밀집되어 있을수록 점수가 높아집니다. |
OI/MCap 비율은 시장 레버리지 정도를 직접적으로 반영하기 때문에 가장 높은 가중치(3.5포인트)를 갖습니다. 레버리지가 높을수록 시장 반전 시 대규모 청산이 발생하기 쉽고 공매도 성공 확률이 높아집니다.
긴 윗꼬리가 새로운 고점을 돌파했습니다(2.8포인트): 가격이 새로운 고점을 기록했고, 윗꼬리가 몸통 길이의 2배를 넘었습니다. 고점 장형 상단 그림자(2.4분): 상단 그림자가 몸통의 2배 이상이며, 종가가 24시간 최고가에 근접해 있습니다. 거래량 높은 하락형 캔들스틱(2분봉): 종가 하락, 거래량은 전날 대비 1.5배 이상 고레벨 도지(1.8분): 몸체 크기 < 진폭 × 0.1, 가격이 최고점 부근. 연속 두 개의 하락 캔들스틱 (1.5분봉)
AI 채점 전에, 이 전략은 여러 가지 엄격한 필터링을 수행하여 기준을 충족하지 않는 항목을 건너뛰고 점수를 매기지 않습니다.
// 周线最高价计算(节选)
const weeklyHigh = Math.max(...klines.slice(-7).map(k => k.high));
const weeklyDrawdown = (weeklyHigh - price) / weeklyHigh;
if (weeklyDrawdown > 0.05) {
// 距周线高点超5%,跳过
filtered.weeklyDrawdown++;
continue;
}
총점이 8.0 이상이고 일중 최대 손실률이 5% 이하일 경우 다음과 같은 결정이 내려집니다. 펀딩 비율이 -0.15% 이상이면 “공매도 개시(Open Short)“가 출력되고, 펀딩 비율이 -0.20%에서 -0.15% 사이이면 “신중한 공매도(Cautious Short)“가 출력됩니다. 총점이 8.0 미만인 목표가에 대해서는 출력이나 포지션 개설이 이루어지지 않습니다.
AI는 결정 결과를 JSON 형식으로 출력하고, 거래 실행 노드는 이를 파싱한 후 주문을 처리하는 데 사용합니다.
// 执行开空(节选)
function executeShort(coin, signalInfo) {
exchange.SetCurrency(coin + '_USDT');
exchange.SetContractType("swap");
exchange.SetMarginLevel(CONFIG.DEFAULT_LEVERAGE); // 设置需求杠杆
// 根据固定金额计算张数
const contractAmount = calculateContractAmount(
CONFIG.FIXED_AMOUNT_USD, // 固定50U
currentPrice,
market
);
exchange.SetDirection("sell");
const orderId = exchange.Sell(-1, contractAmount); // 市价开空
if (orderId) {
_G(`${coin}_USDT.swap_maxprofit`, 0); // 初始化最高盈利记录
Log(`✅ ${coin}: 开空成功 评分${signalInfo.score}`);
}
}
각 포지션은 50U로 고정되어 있어 위험이 단일하고 통제 가능합니다.
5초마다 작동하여 모든 위치를 지속적으로 모니터링하고 두 가지 핵심 기능을 실행합니다.역피라미드 평균 그리고 정지 손실。
이 전략에서 가장 흥미로운 설계 요소는 바로 이것입니다. 공매도 후 가격이 하락하는 대신 상승한다면, 일반적인 사람이라면 손실을 최소화하고 포지션을 청산할 것입니다. 하지만 이 전략은…추세에 반하는 포지션 추가—가격이 높을수록 더 많이 사야 합니다. 왜냐하면 가격이 높을수록 결국 하락폭이 더 커지는 경향이 있기 때문입니다.
포지션에 추가하는 규칙은 다음과 같습니다.
초기 포지션은 50U(개시가격은 P0으로 기록됨)입니다. 가격이 P0에서 50% 상승하면 150U의 첫 번째 추가 포지션이 체결되고, 이 시점의 가격은 P1으로 기록됩니다. 가격이 P1에서 70% 더 상승하면 300U의 두 번째 추가 포지션이 체결됩니다. 최대 두 번의 추가 포지션 체결이 가능하며, 총 포지션 한도는 500U(50 + 150 + 300)입니다.
// 加仓触发检测(节选)
function checkAndExecutePyramidAdd(coin, entryPrice, currentPrice, isShort) {
const addCount = _G(addCountKey) || 0;
if (addCount >= 2) return null; // 最多加仓两次
if (addCount === 0) {
// 第一次加仓:从开仓价涨50%触发
triggerPrice = storedEntryPrice * (1 + PYRAMID_CONFIG.ADD1_TRIGGER);
addAmount = PYRAMID_CONFIG.ADD1_AMOUNT; // 150U
} else if (addCount === 1) {
// 第二次加仓:从第一次加仓价涨70%触发
triggerPrice = add1Price * (1 + PYRAMID_CONFIG.ADD2_TRIGGER);
addAmount = PYRAMID_CONFIG.ADD2_AMOUNT; // 300U
}
if (currentPrice >= triggerPrice) {
return { level: addCount + 1, amount: addAmount, triggerPrice, currentPrice };
}
return null;
}
이 디자인의 논리변동성이 높은 암호화폐는 가격이 상승할수록 더욱 과열되어 거대한 거품을 형성하는 경향이 있습니다. 결국 가격 조정이 일어날 때, 높은 레버리지는 더욱 심각한 매도세로 이어집니다. 최고점에서 큰 포지션을 보유하면 시장 반전 시 수익을 극대화할 수 있습니다.
위험성 또한 명백합니다.암호화폐 가격이 상승분을 회복하지 못할 경우(예: 일방적인 가격 변동이 나타나는 진정한 강세장), 손실이 증폭될 수 있습니다. 따라서 변동성 위험을 완화하고 강제 청산을 방지하기 위해 계좌에는 충분한 자금을 유지해야 합니다. 또한 이 전략은 포지션 규모를 500 USDT로 명시적으로 제한하여 무제한 포지션 추가를 방지합니다.
이익 실현수익 실현을 위한 조정고정된 수익 목표가 아니라 패턴입니다.
포지션의 최대 수익률이 35%에 도달하면 손실률 모니터링이 자동으로 시작됩니다. 손실률이 최대 수익률 대비 5%에 도달하면 즉시 청산이 이루어집니다.
이 설계의 장점은 “수익을 극대화”할 수 있다는 점입니다. 즉, 너무 일찍 수익을 실현하여 더 큰 수익을 놓치는 것을 방지하고, 급격한 가격 하락으로 인해 모든 수익을 잃는 것도 방지합니다.
// 自动止盈触发逻辑(节选)
if (enableAutoTpDrawdown && isShort && tpDrawdown === 0 && maxPnlPercent >= autoTpTrigger) {
tpDrawdown = autoTpDrawdownValue; // 设置5%回撤止盈
_G(tpDrawdownKey, tpDrawdown);
Log(`🎯 ${coin} 最高盈亏达${maxPnlPercent}%,自动启用止盈回撤5%`);
}
// 触发止盈
if (tpDrawdown > 0 && maxPnlPercent > 0 && drawdown >= tpDrawdown) {
autoCloseReason = `止盈回撤(回撤${drawdown}%≥${tpDrawdown}%)`;
}
손절매와 관련하여, 최종 손익 보호를 위해 고정된 비율의 손절매를 수동으로 설정할 수 있습니다.

이 전략에는 운영 상태를 실시간으로 쉽게 모니터링할 수 있도록 4개의 내장 모니터링 패널이 있습니다.
계정 개요자기자본, 누적 손익, 이익률 및 계좌 레버리지(위험 수준별 색상 표시 포함).
AI 신호 측정기각 AI 결정에 대한 점수, 결론, 요소 점수 및 이유를 기록하여 AI가 무엇을 생각하는지 추측할 필요성을 없애줍니다.
위치 모니터링 테이블각 포지션에 대한 진입 가격, 현재 가격, 미실현 손익, 최고 수익 기록, 현재 최대 손실, 포지션 추가 진입 가격, 손절매/이익실현 상태를 실시간으로 표시합니다.
그리드 세부 정보그리드 트레이딩을 사용할 때의 주문 상태:
FMZ 플랫폼을 통해 5초마다 새로 고쳐집니다.LogStatus이는 상호 작용 가능한 테이블 형태로 제공되며, 포지션을 직접 클릭하여 청산하거나 손절매 및 이익 실현 매개변수를 수정하는 등의 작업을 지원합니다.
반대 의견은 자연스럽게 반대 세력을 만들어낸다.시장이 상승세일 때 공매도는 풍부한 유동성과 최소한의 슬리피지를 제공합니다.
AI 기반 다중 요소 선별, 맹목적인 공매도가 아닙니다.이 시스템은 6가지 차원에 걸친 종합적인 평가를 통해 수많은 저품질 신호를 걸러내고, 8점 이상의 점수를 받은 목표물에만 집중합니다.
역피라미드 전략은 되돌림 기반 이익 실현과 결합되어 우수한 위험 대비 수익률을 제공합니다.가격이 상승할수록 포지션을 추가하세요. 추세 반전이 중요할 수 있고 잠재적 수익이 높습니다. 정해진 차익 실현 시점이 없으므로 수익을 최대한 실현할 수 있습니다.
엄격한 위치 제어거래당 최대 금액은 500 USDT이므로, 모든 것을 잃더라도 감당할 수 있는 수준입니다.
일방적인 상승장에서의 지속적인 손실시장이 강한 상승 사이클에 진입하면 공매도로 이익을 본 사람들은 일련의 손실을 경험할 수 있습니다.
역피라미드 평균화는 양날의 검과 같습니다.추세에 반하는 포지션을 추가 매수하면 수익과 손실 모두 증폭됩니다. 변동성이 큰 코인이 계속 상승하는 경우(예: 특정 프로젝트에 대한 중요한 호재로 인해), 세 가지 포지션 모두 손실로 이어질 수 있으며, 최대 손실액은 500 USDT입니다.
적용 시나리오이 방법은 변동성이 크거나 하락세인 시장, 또는 한쪽으로 치우친 상승장에는 적합하지 않습니다. 사용하기 전에 전반적인 시장 환경에 대한 기본적인 이해가 필요합니다.
이 전략의 핵심 아이디어는 다음과 같습니다.주관적인 판단을 데이터와 인공지능으로 대체하고, 희망적인 생각을 엄격한 위치 관리로 대체하십시오.。
6가지 요소로 구성된 점수 시스템의 설계든, 핵심 지표로 OI/MCap 비율을 선정한 것이든, 저자가 시장의 미시 구조를 깊이 이해하고 있으며, 어떤 지표가 진정으로 유용한지, 어떤 지표가 잡음에 불과한지를 정확히 파악하고 있다는 점이 분명하게 드러납니다.
물론 모든 전략에는 한계가 있습니다. 도구는 고정적이지만 시장은 역동적입니다. 실거래에 앞서 철저한 백테스팅을 실시하고, 자신의 위험 감수 수준에 맞춰 매개변수를 조정하며, 전략을 맹목적으로 따라 하는 것은 피하는 것이 좋습니다.
사용자 @Gianbin 님께 특별히 감사드립니다.이 전략은 아무런 거리낌 없이 공유되었으며, 그 바탕이 되는 논리까지 드러냈습니다. 바로 이러한 개방적인 정신 덕분에 더 많은 사람들이 양적 거래의 가능성을 배우고 탐구할 수 있게 된 것입니다. 여러분도 좋은 전략 아이디어가 있다면 자유롭게 공유해 주세요!