Loading...
Loading...
Compare original and translation side by side
/trigger buy poly "Trump 2028" YES below 0.40 size 100
/trigger buy poly "Fed rate" NO above 0.60 size 50
/trigger sell poly "Trump 2028" YES above 0.55 size all/trigger buy poly "Trump 2028" YES below 0.40 size 100
/trigger buy poly "Fed rate" NO above 0.60 size 50
/trigger sell poly "Trump 2028" YES above 0.55 size all/trigger long binance BTCUSDT below 95000 size 0.1 leverage 10x
/trigger short binance ETHUSDT above 4000 size 1 leverage 20x
/trigger close binance BTCUSDT above 105000/trigger long binance BTCUSDT below 95000 size 0.1 leverage 10x
/trigger short binance ETHUSDT above 4000 size 1 leverage 20x
/trigger close binance BTCUSDT above 105000/trigger buy sol SOL below 180 size 100usdc
/trigger sell eth ETH above 4000 size 0.5
/trigger swap arb USDC to ARB below 1.50 size 500/trigger buy sol SOL below 180 size 100usdc
/trigger sell eth ETH above 4000 size 0.5
/trigger swap arb USDC to ARB below 1.50 size 500/triggers List all active triggers
/triggers pending Show pending only
/triggers history Triggered order history
/trigger cancel <id> Cancel trigger
/trigger cancel all Cancel all triggers/triggers 列出所有活跃触发器
/triggers pending 仅显示待处理触发器
/triggers history 已触发订单历史
/trigger cancel <id> 取消指定触发器
/trigger cancel all 取消所有触发器/sl poly "Trump" at 0.35 Stop-loss on position
/tp poly "Trump" at 0.65 Take-profit on position
/trailing-stop poly "Trump" 10% Trailing stop (% from high)/sl poly "Trump" at 0.35 对持仓设置止损
/tp poly "Trump" at 0.65 对持仓设置止盈
/trailing-stop poly "Trump" 10% 追踪止损(从高点回落百分比)import { createTriggerService } from 'clodds/triggers';
const triggers = createTriggerService({
// Price monitoring
checkIntervalMs: 5000, // Check every 5 seconds
// Execution
maxSlippagePercent: 2,
retryAttempts: 3,
// Storage
storage: 'sqlite',
dbPath: './triggers.db',
});
// Start monitoring
await triggers.start();import { createTriggerService } from 'clodds/triggers';
const triggers = createTriggerService({
// 价格监控
checkIntervalMs: 5000, // 每5秒检查一次
// 执行设置
maxSlippagePercent: 2,
retryAttempts: 3,
// 存储设置
storage: 'sqlite',
dbPath: './triggers.db',
});
// 启动监控
await triggers.start();// Buy YES when price drops below threshold
const trigger = await triggers.create({
type: 'entry',
platform: 'polymarket',
market: 'will-trump-win-2028',
side: 'YES',
direction: 'below',
triggerPrice: 0.40,
size: 100, // $100
orderType: 'limit', // 'market' | 'limit'
limitPrice: 0.41, // Optional: max price for limit
});
console.log(`Trigger ID: ${trigger.id}`);
console.log(`Status: ${trigger.status}`); // 'pending'
// Sell when price rises above threshold
await triggers.create({
type: 'exit',
platform: 'polymarket',
market: 'will-trump-win-2028',
side: 'YES',
direction: 'above',
triggerPrice: 0.55,
size: 'all', // Sell entire position
});// 当价格低于阈值时买入YES
const trigger = await triggers.create({
type: 'entry',
platform: 'polymarket',
market: 'will-trump-win-2028',
side: 'YES',
direction: 'below',
triggerPrice: 0.40,
size: 100, // 100美元
orderType: 'limit', // 'market' | 'limit'
limitPrice: 0.41, // 可选:限价订单的最高价格
});
console.log(`触发器ID: ${trigger.id}`);
console.log(`状态: ${trigger.status}`); // 'pending'
// 当价格高于阈值时卖出
await triggers.create({
type: 'exit',
platform: 'polymarket',
market: 'will-trump-win-2028',
side: 'YES',
direction: 'above',
triggerPrice: 0.55,
size: 'all', // 卖出全部持仓
});// Long entry when BTC drops below support
await triggers.create({
type: 'entry',
platform: 'binance',
symbol: 'BTCUSDT',
side: 'long',
direction: 'below',
triggerPrice: 95000,
size: 0.1,
leverage: 10,
// Auto-set SL/TP on fill
stopLoss: 93000,
takeProfit: 105000,
});
// Short entry when ETH breaks above resistance
await triggers.create({
type: 'entry',
platform: 'bybit',
symbol: 'ETHUSDT',
side: 'short',
direction: 'above',
triggerPrice: 4000,
size: 1,
leverage: 20,
});
// Close position when price target hit
await triggers.create({
type: 'exit',
platform: 'binance',
symbol: 'BTCUSDT',
direction: 'above',
triggerPrice: 105000,
size: 'all',
});// 当BTC跌破支撑位时开多单
await triggers.create({
type: 'entry',
platform: 'binance',
symbol: 'BTCUSDT',
side: 'long',
direction: 'below',
triggerPrice: 95000,
size: 0.1,
leverage: 10,
// 成交后自动设置止损/止盈
stopLoss: 93000,
takeProfit: 105000,
});
// 当ETH突破阻力位时开空单
await triggers.create({
type: 'entry',
platform: 'bybit',
symbol: 'ETHUSDT',
side: 'short',
direction: 'above',
triggerPrice: 4000,
size: 1,
leverage: 20,
});
// 当价格达到目标位时平仓
await triggers.create({
type: 'exit',
platform: 'binance',
symbol: 'BTCUSDT',
direction: 'above',
triggerPrice: 105000,
size: 'all',
});// Buy SOL when price drops
await triggers.create({
type: 'entry',
platform: 'jupiter', // Solana DEX
tokenIn: 'USDC',
tokenOut: 'SOL',
direction: 'below',
triggerPrice: 180,
size: 100, // 100 USDC
slippagePercent: 1,
});
// Sell ETH when price rises
await triggers.create({
type: 'exit',
platform: 'uniswap', // EVM DEX
chain: 'ethereum',
tokenIn: 'ETH',
tokenOut: 'USDC',
direction: 'above',
triggerPrice: 4000,
size: 0.5,
});// 当价格下跌时买入SOL
await triggers.create({
type: 'entry',
platform: 'jupiter', // Solana去中心化交易所
tokenIn: 'USDC',
tokenOut: 'SOL',
direction: 'below',
triggerPrice: 180,
size: 100, // 100 USDC
slippagePercent: 1,
});
// 当价格上涨时卖出ETH
await triggers.create({
type: 'exit',
platform: 'uniswap', // EVM去中心化交易所
chain: 'ethereum',
tokenIn: 'ETH',
tokenOut: 'USDC',
direction: 'above',
triggerPrice: 4000,
size: 0.5,
});// Set stop-loss on existing position
await triggers.setStopLoss({
platform: 'polymarket',
market: 'will-trump-win-2028',
side: 'YES',
triggerPrice: 0.35,
size: 'all',
});
// Set take-profit
await triggers.setTakeProfit({
platform: 'polymarket',
market: 'will-trump-win-2028',
side: 'YES',
triggerPrice: 0.65,
size: 'all',
});
// Trailing stop (follows price up, triggers on pullback)
await triggers.setTrailingStop({
platform: 'polymarket',
market: 'will-trump-win-2028',
side: 'YES',
trailPercent: 10, // Trigger if drops 10% from high
size: 'all',
});// 对现有持仓设置止损
await triggers.setStopLoss({
platform: 'polymarket',
market: 'will-trump-win-2028',
side: 'YES',
triggerPrice: 0.35,
size: 'all',
});
// 设置止盈
await triggers.setTakeProfit({
platform: 'polymarket',
market: 'will-trump-win-2028',
side: 'YES',
triggerPrice: 0.65,
size: 'all',
});
// 追踪止损(跟随价格上涨,回调时触发)
await triggers.setTrailingStop({
platform: 'polymarket',
market: 'will-trump-win-2028',
side: 'YES',
trailPercent: 10, // 从高点回落10%时触发
size: 'all',
});// Trigger only when multiple conditions met
await triggers.create({
type: 'entry',
platform: 'polymarket',
market: 'will-trump-win-2028',
side: 'YES',
conditions: [
{ type: 'price', direction: 'below', value: 0.40 },
{ type: 'volume24h', direction: 'above', value: 100000 },
{ type: 'spread', direction: 'below', value: 0.02 },
],
// All conditions must be true
conditionLogic: 'AND', // 'AND' | 'OR'
size: 100,
});// 仅当多个条件满足时触发
await triggers.create({
type: 'entry',
platform: 'polymarket',
market: 'will-trump-win-2028',
side: 'YES',
conditions: [
{ type: 'price', direction: 'below', value: 0.40 },
{ type: 'volume24h', direction: 'above', value: 100000 },
{ type: 'spread', direction: 'below', value: 0.02 },
],
// 所有条件必须为真
conditionLogic: 'AND', // 'AND' | 'OR'
size: 100,
});// OCO: Either SL or TP triggers, other cancels
const oco = await triggers.createOCO({
platform: 'binance',
symbol: 'BTCUSDT',
stopLoss: {
direction: 'below',
triggerPrice: 93000,
size: 'all',
},
takeProfit: {
direction: 'above',
triggerPrice: 105000,
size: 'all',
},
});// OCO:触发止损或止盈其中一个时,另一个自动取消
const oco = await triggers.createOCO({
platform: 'binance',
symbol: 'BTCUSDT',
stopLoss: {
direction: 'below',
triggerPrice: 93000,
size: 'all',
},
takeProfit: {
direction: 'above',
triggerPrice: 105000,
size: 'all',
},
});// List all triggers
const all = await triggers.list();
for (const t of all) {
console.log(`${t.id}: ${t.platform} ${t.market || t.symbol}`);
console.log(` ${t.direction} ${t.triggerPrice}`);
console.log(` Status: ${t.status}`);
console.log(` Created: ${t.createdAt}`);
}
// Get pending only
const pending = await triggers.list({ status: 'pending' });
// Get history (triggered)
const history = await triggers.list({ status: 'triggered' });
// Cancel trigger
await triggers.cancel(triggerId);
// Cancel all
await triggers.cancelAll();// 列出所有触发器
const all = await triggers.list();
for (const t of all) {
console.log(`${t.id}: ${t.platform} ${t.market || t.symbol}`);
console.log(` ${t.direction} ${t.triggerPrice}`);
console.log(` 状态: ${t.status}`);
console.log(` 创建时间: ${t.createdAt}`);
}
// 仅获取待处理触发器
const pending = await triggers.list({ status: 'pending' });
// 获取历史记录(已触发的)
const history = await triggers.list({ status: 'triggered' });
// 取消触发器
await triggers.cancel(triggerId);
// 取消所有触发器
await triggers.cancelAll();// Trigger activated
triggers.on('triggered', async (trigger, result) => {
console.log(`Trigger ${trigger.id} activated!`);
console.log(`Order: ${result.orderId}`);
console.log(`Fill price: ${result.fillPrice}`);
console.log(`Size: ${result.filledSize}`);
});
// Trigger failed
triggers.on('failed', (trigger, error) => {
console.error(`Trigger ${trigger.id} failed: ${error.message}`);
});
// Price approaching trigger
triggers.on('approaching', (trigger, currentPrice) => {
console.log(`Price ${currentPrice} approaching trigger at ${trigger.triggerPrice}`);
});// 触发器被激活
triggers.on('triggered', async (trigger, result) => {
console.log(`触发器 ${trigger.id} 已激活!`);
console.log(`订单: ${result.orderId}`);
console.log(`成交价格: ${result.fillPrice}`);
console.log(`成交数量: ${result.filledSize}`);
});
// 触发器执行失败
triggers.on('failed', (trigger, error) => {
console.error(`触发器 ${trigger.id} 执行失败: ${error.message}`);
});
// 价格接近触发阈值
triggers.on('approaching', (trigger, currentPrice) => {
console.log(`当前价格 ${currentPrice} 接近触发阈值 ${trigger.triggerPrice}`);
});| Platform | Entry Triggers | Exit Triggers | SL/TP |
|---|---|---|---|
| Polymarket | ✓ | ✓ | ✓ |
| Kalshi | ✓ | ✓ | ✓ |
| Manifold | ✓ | ✓ | ✓ |
| 平台 | 开仓触发器 | 平仓触发器 | 止损/止盈 |
|---|---|---|---|
| Polymarket | ✓ | ✓ | ✓ |
| Kalshi | ✓ | ✓ | ✓ |
| Manifold | ✓ | ✓ | ✓ |
| Platform | Entry Triggers | Native Triggers | SL/TP |
|---|---|---|---|
| Binance | ✓ | ✓ | ✓ |
| Bybit | ✓ | ✓ | ✓ |
| MEXC | ✓ | ✓ Native | ✓ |
| Hyperliquid | ✓ | ✓ | ✓ |
| 平台 | 开仓触发器 | 原生触发器 | 止损/止盈 |
|---|---|---|---|
| Binance | ✓ | ✓ | ✓ |
| Bybit | ✓ | ✓ | ✓ |
| MEXC | ✓ | ✓ 原生 | ✓ |
| Hyperliquid | ✓ | ✓ | ✓ |
| Platform | Entry Triggers | Exit Triggers |
|---|---|---|
| Jupiter (Solana) | ✓ | ✓ |
| Raydium | ✓ | ✓ |
| Uniswap (EVM) | ✓ | ✓ |
| 1inch (EVM) | ✓ | ✓ |
| 平台 | 开仓触发器 | 平仓触发器 |
|---|---|---|
| Jupiter (Solana) | ✓ | ✓ |
| Raydium | ✓ | ✓ |
| Uniswap (EVM) | ✓ | ✓ |
| 1inch (EVM) | ✓ | ✓ |
| Type | Description |
|---|---|
| entry | Open new position when triggered |
| exit | Close position when triggered |
| stop-loss | Exit to limit losses |
| take-profit | Exit to lock in gains |
| trailing-stop | Dynamic stop that follows price |
| oco | One-cancels-other (SL + TP pair) |
| 类型 | 描述 |
|---|---|
| entry | 触发时开立新持仓 |
| exit | 触发时平仓 |
| stop-loss | 平仓以限制损失 |
| take-profit | 平仓以锁定收益 |
| trailing-stop | 随价格动态调整的止损 |
| oco | 二选一取消(止损+止盈组合) |
| Platform | Price Source |
|---|---|
| Polymarket | WebSocket mid price |
| Kalshi | REST API best bid/ask |
| Binance | WebSocket mark price |
| Bybit | WebSocket last price |
| Jupiter | On-chain oracle |
| 平台 | 价格来源 |
|---|---|
| Polymarket | WebSocket中间价 |
| Kalshi | REST API最优买卖价 |
| Binance | WebSocket标记价格 |
| Bybit | WebSocket最新成交价 |
| Jupiter | 链上预言机 |
// Buy the dip, sell the rip
await triggers.create({
platform: 'polymarket',
market: 'trump-2028',
side: 'YES',
direction: 'below',
triggerPrice: 0.40,
size: 200,
});
await triggers.create({
platform: 'polymarket',
market: 'trump-2028',
side: 'YES',
direction: 'above',
triggerPrice: 0.55,
size: 'all',
});// 逢低买入,逢高卖出
await triggers.create({
platform: 'polymarket',
market: 'trump-2028',
side: 'YES',
direction: 'below',
triggerPrice: 0.40,
size: 200,
});
await triggers.create({
platform: 'polymarket',
market: 'trump-2028',
side: 'YES',
direction: 'above',
triggerPrice: 0.55,
size: 'all',
});// Enter long on breakout above resistance
await triggers.create({
platform: 'binance',
symbol: 'BTCUSDT',
side: 'long',
direction: 'above',
triggerPrice: 100000,
size: 0.5,
leverage: 10,
stopLoss: 98000,
takeProfit: 110000,
});// 突破阻力位时开多单
await triggers.create({
platform: 'binance',
symbol: 'BTCUSDT',
side: 'long',
direction: 'above',
triggerPrice: 100000,
size: 0.5,
leverage: 10,
stopLoss: 98000,
takeProfit: 110000,
});// Buy more as price drops
const levels = [180, 170, 160, 150];
for (const price of levels) {
await triggers.create({
platform: 'jupiter',
tokenOut: 'SOL',
tokenIn: 'USDC',
direction: 'below',
triggerPrice: price,
size: 50, // $50 at each level
});
}// 价格下跌时分批买入
const levels = [180, 170, 160, 150];
for (const price of levels) {
await triggers.create({
platform: 'jupiter',
tokenOut: 'SOL',
tokenIn: 'USDC',
direction: 'below',
triggerPrice: price,
size: 50, // 每个价位买入50美元
});
}