Overview
Trade Plans are comprehensive trading business plans that define your overall approach to trading as a professional business. Create structured plans that outline what assets you'll trade, your account size, trading software, strategies, and risk management framework.
Think of Trade Plans as your business blueprint — not pre-trade setups for individual positions, but high-level operational plans for how you run your trading business.
Supported content formats:
- TipTap JSON (native)
- HTML
- Markdown
Features:
- Multi-format content (read & write)
- Media URL extraction
- Linked playbooks
- Full-text search
List trade plans
Retrieve a paginated list of trade plans with optional search filtering.
Endpoint: GET /api/v1/trade-plans
Query parameters
Example request
curl "https://app.mypropjournal.com/api/v1/trade-plans?limit=10&format=markdown" \
-H "Authorization: Bearer mpj_your_api_key_here"
Example response
{
"data": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"title": "2026 Futures Trading Business Plan",
"description": "My comprehensive plan for trading ES and NQ futures professionally",
"subtitle": "Q2 2026",
"content": "# Trading Business Plan\n\n## Assets to Trade\n- ES Futures\n- NQ Futures\n\n## Account Size\n$50,000 starting capital...",
"created_at": "2026-05-13T10:00:00Z",
"updated_at": "2026-05-13T10:30:00Z",
"trade_plan_playbooks": [
{
"playbook_id": "abc-123",
"sort_order": 1
}
]
}
],
"pagination": {
"page": 1,
"limit": 10,
"total": 45,
"totalPages": 5
}
}
Get single trade plan
Retrieve a specific trade plan by ID.
Endpoint: GET /api/v1/trade-plans/{id}
Query parameters
Example with media extraction
curl "https://app.mypropjournal.com/api/v1/trade-plans/550e8400-e29b-41d4-a716-446655440000?include_media=true" \
-H "Authorization: Bearer mpj_your_api_key_here"
Example response
{
"data": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"title": "NQ Breakout Setup",
"content": { ... },
"content_html": "<h1>Trade Setup</h1><ul><li><strong>Entry</strong>: Above 17,500</li>...</ul>",
"content_markdown": "# Trade Setup\n\n- **Entry**: Above 17,500\n...",
"media": {
"images": [
"https://storage.example.com/charts/nq-setup-2026-05-13.png"
],
"videos": [],
"all": [
"https://storage.example.com/charts/nq-setup-2026-05-13.png"
]
},
"created_at": "2026-05-13T10:00:00Z",
"updated_at": "2026-05-13T10:30:00Z"
}
}
Create trade plan
Create a new trade plan with optional content in any format.
Endpoint: POST /api/v1/trade-plans
Request body
Example with Markdown
const response = await fetch('https://app.mypropjournal.com/api/v1/trade-plans', {
method: 'POST',
headers: {
'Authorization': 'Bearer mpj_your_api_key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
title: '2026 Futures Trading Business Plan',
description: 'Comprehensive trading business plan for ES/NQ futures',
subtitle: 'Q2 2026 - Professional Trading Operations',
content_markdown: `# Trading Business Plan
**Assets to Trade:**
- Primary: ES Futures (S&P 500)
- Secondary: NQ Futures (Nasdaq 100)
- Timeframes: 5-min for entries, 15-min for context
**Account Information:**
- Starting Capital: $50,000
- Platform: NinjaTrader 8
- Broker: Optimus Futures
- Data Feed: Rithmic
**Risk Management Framework:**
- Max Risk Per Trade: 1% of account ($500)
- Daily Loss Limit: 2% of account ($1,000)
- Max Position Size: 2 contracts ES, 1 contract NQ
**Trading Schedule:**
- Active Hours: 9:30 AM - 11:30 AM EST (market open session)
- Trading Days: Monday - Friday
- Max Trades/Day: 3 trades
**Business Goals:**
- Monthly Target: +5% account growth
- Yearly Target: +60% account growth
- Consistency Goal: 70% win rate on A+ setups
**Strategies:**
See linked playbooks for detailed entry/exit strategies.
`
})
});
const data = await response.json();
console.log('Created:', data.data.id);
Example response
{
"data": {
"id": "new-uuid",
"title": "ES Morning Breakout",
"description": "Pre-market analysis for ES futures",
"subtitle": "Market Open Strategy",
"content": { ... },
"content_html": "<h1>Trade Setup</h1>...",
"content_markdown": "# Trade Setup\n\n## Entry Criteria...",
"created_at": "2026-05-13T14:00:00Z",
"updated_at": "2026-05-13T14:00:00Z"
}
}
Update trade plan
Update an existing trade plan. Only include fields you want to change.
Endpoint: PUT /api/v1/trade-plans/{id}
Request body
Example
curl -X PUT "https://app.mypropjournal.com/api/v1/trade-plans/550e8400-e29b-41d4-a716-446655440000" \
-H "Authorization: Bearer mpj_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"title": "Updated: 2026 Q3 Trading Business Plan",
"content_markdown": "# Updated Business Plan\n\nIncreased daily loss limit to 2.5% based on Q2 performance..."
}'
Delete trade plan
Delete a trade plan permanently.
Endpoint: DELETE /api/v1/trade-plans/{id}
Cascade Delete Warning
Deleting a trade plan will permanently cascade delete the following related data:
- All playbook associations linking this plan to playbooks
- All tag associations for this plan
This action cannot be undone. The API response will include warnings about what data was affected.
Example
curl -X DELETE "https://app.mypropjournal.com/api/v1/trade-plans/550e8400-e29b-41d4-a716-446655440000" \
-H "Authorization: Bearer mpj_your_api_key_here"
Response
{
"message": "Trade plan deleted successfully"
}
Use cases
MCP Server: Create annual trading plan
import requests
from datetime import datetime
def create_trading_business_plan(api_key, plan_details):
"""Create a comprehensive trading business plan"""
response = requests.post(
'https://app.mypropjournal.com/api/v1/trade-plans',
headers={
'Authorization': f'Bearer {api_key}',
'Content-Type': 'application/json'
},
json={
'title': f'Trading Business Plan - {datetime.now().year}',
'subtitle': f'Professional Trading Operations',
'description': 'Comprehensive business plan for systematic trading',
'content_markdown': plan_details
}
)
return response.json()
# Use with Claude or other LLM to generate comprehensive plans
plan_markdown = """
# 2026 Trading Business Plan
**Business Overview:**
Professional futures trader specializing in ES/NQ momentum strategies.
**Capital & Risk:**
- Starting Capital: $100,000
- Max Risk Per Trade: 1%
- Daily Loss Limit: 2%
**Assets & Markets:**
- ES Futures (primary)
- NQ Futures (secondary)
- Trading hours: 9:30 AM - 11:30 AM EST
**Goals:**
- Monthly: +5% growth
- Yearly: +60% return
- Win Rate: 70%+ on A+ setups
**Software & Tools:**
- Platform: NinjaTrader 8
- Charting: TradingView Pro
- Journal: My Prop Journal
"""
result = create_trading_business_plan('mpj_your_key', plan_markdown)
print(f"Created business plan: {result['data']['id']}")
Export business plans
// Export all trading business plans as Markdown
const response = await fetch(
'https://app.mypropjournal.com/api/v1/trade-plans?format=markdown&limit=100',
{
headers: { 'Authorization': 'Bearer mpj_your_api_key' }
}
);
const data = await response.json();
// Export each business plan as a separate file
for (const plan of data.data) {
const filename = `${plan.title.replace(/\s+/g, '-').toLowerCase()}.md`;
await fs.writeFile(
`./business-plans/${filename}`,
`# ${plan.title}\n\n**Description:** ${plan.description}\n\n${plan.content}`
);
}
console.log(`Exported ${data.data.length} trading business plans`);
Next steps
- Content Formats — Learn about multi-format content and media extraction
- Trade Write-ups — Post-trade analysis and reviews
- Playbooks — Link strategies to your plans