Skip to main content

A multi-factor quantitative trading framework for cryptocurrency markets.

Project description

Phandas

en   zh-TW

English

A multi-factor quantitative trading framework for cryptocurrency markets.

Overview

Phandas is a streamlined toolkit for alpha factor research and backtesting in cryptocurrency markets. Design factors with 60+ operators, test with dollar-neutral backtesting, and analyze with professional metrics.

Try it now

Web Demo - Experience Phandas directly in your browser. No installation required.

Key Features

  • Data Fetching: Multi-source OHLCV data (Binance, OKX)
  • Factor Engine: 60+ time-series and cross-sectional operators
  • Neutralization: Vector projection & regression-based orthogonalization
  • Backtesting: Dollar-neutral strategies with full/partial rebalancing
  • Performance Metrics: Sharpe, Sortino, Calmar, Max Drawdown, VaR, PSR
  • Factor Analysis: IC, IR, correlation, coverage, turnover
  • MCP Integration: AI agents (Claude) can directly access Phandas

Installation

pip install phandas

Quick Start

from phandas import *

# Fetch market data
panel = fetch_data(
    symbols=['ETH', 'SOL', 'ARB', 'OP', 'POL', 'SUI'],
    timeframe='1d',
    start_date='2023-01-01',
    sources=['binance'],
)

# Extract factors
close = panel['close']
volume = panel['volume']
open = panel['open']

# Construct momentum factor
momentum_20 = (close / close.ts_delay(20)) - 1

# Neutralize against volume
factor = vector_neut(rank(momentum_20), rank(-volume))

# Backtest strategy
result = backtest(
    entry_price_factor=open, 
    strategy_factor=factor,
    transaction_cost=(0.0003, 0.0003)
)

result.plot_equity()

AI Integration via MCP

Use Phandas with AI IDEs (Cursor, Claude Desktop) directly—no coding required.

Setup for Cursor (Recommended)

  1. pip install phandas
  2. Open Cursor → Settings → Tools & MCP → New MCP Server
  3. Paste the JSON config below, save and restart
{
  "mcpServers": {
    "phandas": {
      "command": "python",
      "args": ["-m", "phandas.mcp_server"]
    }
  }
}

Available Tools (4 Functions)

  • fetch_market_data: Get OHLCV data for symbols
  • list_operators: Browse all 50+ factor operators
  • read_source: View source code of any function
  • execute_factor_backtest: Backtest custom factor expressions

繁體中文

一個專為加密貨幣市場設計的多因子量化交易框架。

概述

Phandas 是一個精簡的加密貨幣因子研究與回測工具。提供 60+ 運算子設計因子、美元中性回測、專業績效指標分析。

立即體驗

網頁演示 - 直接在瀏覽器中體驗 Phandas,無需安裝。

核心功能

  • 資料獲取:多源 OHLCV 資料(Binance、OKX)
  • 因子引擎:60+ 時間序列與橫截面運算子
  • 因子中性化:向量投影與迴歸正交化
  • 回測引擎:美元中性策略、全/部分調倉
  • 績效指標:夏普比、Sortino、Calmar、最大回撤、VaR、PSR
  • 因子分析:IC、IR、相關性、覆蓋率、換手率
  • MCP 集成:AI 代理(Claude)可直接調用 Phandas

安裝

pip install phandas

快速開始

from phandas import *

# 獲取市場資料
panel = fetch_data(
    symbols=['ETH', 'SOL', 'ARB', 'OP', 'POL', 'SUI'],
    timeframe='1d',
    start_date='2023-01-01',
    sources=['binance'],
)

# 提取因子
close = panel['close']
volume = panel['volume']
open = panel['open']

# 構建動量因子
momentum_20 = (close / close.ts_delay(20)) - 1

# 對成交量進行中性化
factor = vector_neut(rank(momentum_20), rank(-volume))

# 回測策略
result = backtest(
    entry_price_factor=open, 
    strategy_factor=factor,
    transaction_cost=(0.0003, 0.0003)
)

result.plot_equity()

AI 集成(MCP 支援)

在 AI IDE(Cursor、Claude Desktop)中直接使用 Phandas—無需編碼。

Cursor 設定(推薦)

  1. pip install phandas
  2. 開啟 Cursor → Settings → Tools & MCP → New MCP Server
  3. 貼上下方 JSON 配置,儲存並重啟
{
  "mcpServers": {
    "phandas": {
      "command": "python",
      "args": ["-m", "phandas.mcp_server"]
    }
  }
}

可用工具(4 個函數)

  • fetch_market_data: 獲取代幣 OHLCV 資料
  • list_operators: 瀏覽 50+ 因子運算子
  • read_source: 查看任何函數的源代碼
  • execute_factor_backtest: 回測自訂因子表達式

Documentation | 文檔


Community & Support | 社群與支持

License

This project is licensed under the BSD 3-Clause License - see LICENSE file for details.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

phandas-0.18.0.tar.gz (60.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

phandas-0.18.0-py3-none-any.whl (62.6 kB view details)

Uploaded Python 3

File details

Details for the file phandas-0.18.0.tar.gz.

File metadata

  • Download URL: phandas-0.18.0.tar.gz
  • Upload date:
  • Size: 60.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.7

File hashes

Hashes for phandas-0.18.0.tar.gz
Algorithm Hash digest
SHA256 804506cf7a0dfe6fb8b6e5b69038f5d5c5deb524caa2cb8acc9f6381c7b3d0dd
MD5 ebf0ca262aaef446414114a073615398
BLAKE2b-256 9998cf8467ffafe5c9fbe4d1dbccbb5f16668ceaada13284f7ac47df56eb503b

See more details on using hashes here.

File details

Details for the file phandas-0.18.0-py3-none-any.whl.

File metadata

  • Download URL: phandas-0.18.0-py3-none-any.whl
  • Upload date:
  • Size: 62.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.7

File hashes

Hashes for phandas-0.18.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c2016c7f0af898483881e6b168cb231c6f1c3fac052cf1308e0e7c6398741010
MD5 58ccf9c057fd6c76c48b22e2ac967d53
BLAKE2b-256 98667c1f9706342d931b99da7b1962336c66d7c691ae12c83b9f825be5c8adc6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page