بنقرة واحدة
archon-bridge
Unified portfolio + order routing across Zerodha, Upstox, Angel One
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Unified portfolio + order routing across Zerodha, Upstox, Angel One
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Search and download arXiv papers (no API key needed)
Delegate coding and file edits to Anthropic Claude Code CLI
Read/write Windows clipboard text, HTML, images, history (PowerShell)
Running scripts and code on Windows
Delegate coding tasks to OpenAI Codex CLI
Windows Defender: scans, threat history, signatures (PowerShell)
| name | archon-bridge |
| description | Unified portfolio + order routing across Zerodha, Upstox, Angel One |
| category | india |
| version | 1.0.0 |
| tags | archon, broker, portfolio, aggregation, zerodha, upstox, angel, india, trading, unified |
| license | Apache-2.0 |
Unified broker bridge that aggregates portfolio data and normalizes order routing across multiple Indian brokers — Zerodha Kite, Upstox, and Angel One — into a single consistent interface.
# Requires env vars: KITE_API_KEY, KITE_ACCESS_TOKEN, UPSTOX_TOKEN
function Get-KiteHoldings {
$h = @{ "X-Kite-Version"="3"; "Authorization"="token $env:KITE_API_KEY:$env:KITE_ACCESS_TOKEN" }
(Invoke-RestMethod -Uri "https://api.kite.trade/portfolio/holdings" -Headers $h).data |
Select-Object @{N='symbol';E={$_.tradingsymbol}},
@{N='qty';E={$_.quantity}},
@{N='avg';E={$_.average_price}},
@{N='ltp';E={$_.last_price}},
@{N='broker';E={'Zerodha'}}
}
function Get-UpstoxHoldings {
$h = @{ "Authorization"="Bearer $env:UPSTOX_TOKEN"; "Accept"="application/json" }
(Invoke-RestMethod -Uri "https://api.upstox.com/v2/portfolio/long-term-holdings" -Headers $h).data |
Select-Object @{N='symbol';E={$_.tradingsymbol}},
@{N='qty';E={$_.quantity}},
@{N='avg';E={$_.average_price}},
@{N='ltp';E={$_.last_price}},
@{N='broker';E={'Upstox'}}
}
$all = @(Get-KiteHoldings) + @(Get-UpstoxHoldings)
$all | Sort-Object symbol | Format-Table -AutoSize
$all = @(Get-KiteHoldings) + @(Get-UpstoxHoldings)
$total = ($all | ForEach-Object { $_.ltp * $_.qty } | Measure-Object -Sum).Sum
$cost = ($all | ForEach-Object { $_.avg * $_.qty } | Measure-Object -Sum).Sum
$pnl = $total - $cost
Write-Host "Total Value: ₹$([math]::Round($total,2))"
Write-Host "Total Cost: ₹$([math]::Round($cost,2))"
Write-Host "Total P&L: ₹$([math]::Round($pnl,2)) ($([math]::Round($pnl/$cost*100,2))%)"
$all = @(Get-KiteHoldings) + @(Get-UpstoxHoldings)
$all | Group-Object symbol | Where-Object Count -gt 1 |
ForEach-Object {
Write-Host "=== $($_.Name) ==="
$_.Group | Format-Table broker, qty, avg, ltp -AutoSize
}
function New-ArchonOrder {
param(
[string]$Symbol,
[string]$Side, # BUY or SELL
[int]$Qty,
[string]$OrderType, # MARKET or LIMIT
[double]$Price = 0,
[string]$Broker # Zerodha or Upstox
)
if ($Broker -eq "Zerodha") {
return @{
tradingsymbol = $Symbol
exchange = "NSE"
transaction_type = $Side
order_type = $OrderType
quantity = $Qty
price = $Price
product = "CNC"
}
} elseif ($Broker -eq "Upstox") {
return @{
instrument_token = "NSE_EQ|$Symbol"
transaction_type = $Side
order_type = $OrderType
quantity = $Qty
price = $Price
product = "D"
validity = "DAY"
}
}
}
"Show my total equity portfolio across Zerodha and Upstox" → Call both broker APIs, merge holdings, calculate combined value and P&L.
"Do I hold Reliance in more than one broker?" → Aggregate all holdings, group by symbol, find symbols present in multiple broker accounts.
"Create a normalized order for buying 10 shares of HDFC Bank via Upstox"
→ Call New-ArchonOrder -Symbol "HDFCBANK" -Side "BUY" -Qty 10 -OrderType "MARKET" -Broker "Upstox".