Skip to main content
Glama
basic-trading.js1.86 kB
#!/usr/bin/env node /** * Basic Trading Example * Shows how to use the IG Trading API */ import dotenv from 'dotenv'; import { IGService } from '../src/services/ig-service.js'; import { config } from '../src/core/config.js'; dotenv.config(); async function main() { // Initialize with credentials config.credentials = { apiKey: process.env.IG_API_KEY, identifier: process.env.IG_IDENTIFIER, password: process.env.IG_PASSWORD, isDemo: process.env.IG_DEMO === 'true' }; const ig = new IGService(); try { // 1. Login console.log('Logging in...'); const session = await ig.login(); console.log(`✓ Logged in as ${session.currentAccountId}`); // 2. Get account info const accounts = await ig.getAccounts(); console.log(`\nYou have ${accounts.accounts.length} account(s):`); accounts.accounts.forEach(acc => { console.log(` - ${acc.accountId}: ${acc.currency} ${acc.balance.balance}`); }); // 3. Get positions const positions = await ig.getPositions(); console.log(`\nOpen positions: ${positions.positions.length}`); // 4. Search for a market const markets = await ig.searchMarkets('EUR/USD'); console.log(`\nFound ${markets.markets.length} markets for EUR/USD`); // 5. Get market details if (markets.markets.length > 0) { const epic = markets.markets[0].epic; const details = await ig.getMarketDetails(epic); const market = details.marketDetails[0]; console.log(`\nMarket: ${market.instrument.name}`); console.log(` Current bid: ${market.snapshot.bid}`); console.log(` Current offer: ${market.snapshot.offer}`); } // 6. Logout await ig.logout(); console.log('\n✓ Logged out successfully'); } catch (error) { console.error('Error:', error.message); process.exit(1); } } main();

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/kea0811/ig-trading-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server