A concrete starting test
Open the Google strategy preview, read the saved buy and sell cards, and check the allocation units. Its moving-average checks use equality and cooldowns; a similarly named strategy elsewhere may not. The QuantConnect comparison supplies a complete Python example for a simpler experiment and explains the differences. The Composer comparison works through cash sizing versus target weights.
For options, begin with the Option Alpha comparison’s fixed two-leg spread specification. For Public or Robinhood, distinguish the research workspace, native brokerage agent and external MCP connector before choosing which system may act on an account.
Inspect an actual NexusTrade strategy

Buy 100% of the available cash in GOOG whenever GOOG's 50-day average price is at or above its 200-day average price and days since the last filled buy order of GOOG is above 14 and days since the last filled buy order of GOOG is above 3.
Buy GOOG 50 Day GOOG SMA ≥ 200 Day GOOG SMA and # of Days Since the Last Filled Buy Order of GOOG > Constant 14 and # of Days Since the Last Filled Buy Order of GOOG > Constant 3
Sell 100% of the portfolio worth of GOOG whenever GOOG's 50-day average price is at or below its 200-day average price and days since the last filled buy order of GOOG is above 14 and days since the last filled sell order of GOOG is above 3.
Sell 100% GOOG 50 Day GOOG SMA ≤ 200 Day GOOG SMA and # of Days Since the Last Filled Buy Order of GOOG > Constant 14 and # of Days Since the Last Filled Sell Order of GOOG > Constant 3
Seven alternatives, seven distinct decisions
Choose by the artifact you need
Choose the workflow you need
Choose the output you need: saved rules, custom code, target allocations or a brokerage workflow.
Compare the actual object you need to keep: inspectable saved rules, a code artifact, an allocation tree or a brokerage workflow. The dated source sections describe the available routes.
Work through the declared example
Open the Google rule preview and compare its conditions, cooldowns and allocation units.
Open this exact Google recipeKeep the example's declared rules and units with the resulting object. A proposed translation remains separate from an executed matched test.
Review the same task in Aurora
Open the prepared review using the exact example. Keep source dates, rule differences and account requirements with your comparison.
The request previews the selected artifact. Record returned results separately from reviewed code or documentation.
Start with the artifact you need
Choose NexusTrade when your idea should become an inspectable saved portfolio: research the company, define rules, review a historical test and observe a separate paper deployment. The real Google rule preview below shows what that artifact looks like. That is the main reason to choose it over a workspace that stops at a research answer or code file.
A different product can be the better fit when the job is custom engine development, visual target allocation, an options monitor, or automation inside a specific brokerage. The comparisons below show those distinctions. They do not rank products by invented returns, backtest speed or an unverified price advantage.
Check the price and account requirements for your task
Subscription prices do not cover the whole decision. Check required history and frequency, compute or research usage, broker fees, country eligibility and instrument approval. Composer and Option Alpha publish plan prices and limits; QuantConnect separates free features, paid plans, nodes and data. Broker-specific offers have conditions. Each linked comparison identifies the verified terms and remaining account checks.
These seven pages are workflow comparisons reviewed October 10, 2026. Their product screenshots show NexusTrade configurations. We have not run matched strategies or live accounts across all seven alternatives.
What the saved rules mean
The buy rule checks whether the 50-day moving average is at least the 200-day average, with more than 14 days since the last buy and an additional more-than-3-day buy check. The sell rule checks the inverse state, with more than 14 days since the last buy and more than 3 days since the last sell. These are state checks with cooldowns. They do not require a new crossing event.
The JSON below retains the library conditions and actions while omitting editor forms, generated identifiers and timestamps. It is a semantic export for inspection, not a saved customer portfolio.
The buy spends 100% of buying power; the sell uses 100% of portfolio value. Equality meets both moving-average comparisons. There is no explicit zero-position entry guard. Review those details before changing the recipe or translating it to another engine.
View complete record
[
{
"name": "Buy 100% of the available cash in GOOG whenever GOOG's 50-day average price is at or above its 200-day average price and days since the last filled buy order of GOOG is above 14 and days since the last filled buy order of GOOG is above 3.",
"userId": null,
"active": true,
"condition": {
"name": "50 Day GOOG SMA ≥ 200 Day GOOG SMA and # of Days Since the Last Filled Buy Order of GOOG > Constant 14 and # of Days Since the Last Filled Buy Order of GOOG > Constant 3",
"type": "And",
"description": "All conditions must be true",
"example": "If Apple's price is up today but down for the week.",
"conditions": [
{
"lhs": {
"compound": false,
"targetAsset": {
"name": "GOOG",
"type": "Stock",
"symbol": "GOOG"
},
"targetAssets": [],
"window": {
"length": 50,
"interval": "Day"
},
"type": "SimpleMovingAverage",
"name": "50 Day GOOG SMA"
},
"rhs": {
"compound": false,
"targetAsset": {
"name": "GOOG",
"type": "Stock",
"symbol": "GOOG"
},
"targetAssets": [],
"window": {
"length": 200,
"interval": "Day"
},
"type": "SimpleMovingAverage",
"name": "200 Day GOOG SMA"
},
"name": "50 Day GOOG SMA ≥ 200 Day GOOG SMA",
"comparison": "greaterThanOrEqual",
"type": "Base",
"description": "Left-Hand indicator (comparator) Right-Hand Indicator",
"example": "If the Rate of Change of Apple's price is > the Value 0."
},
{
"lhs": {
"compound": false,
"targetAssets": [
{
"name": "GOOG",
"type": "Stock",
"symbol": "GOOG"
}
],
"side": "Buy",
"type": "DaysSinceOrder",
"orderStatus": "Filled",
"name": "# of Days Since the Last Filled Buy Order of GOOG"
},
"rhs": {
"compound": false,
"targetAssets": [],
"value": 14,
"type": "Value",
"name": "Constant 14"
},
"name": "# of Days Since the Last Filled Buy Order of GOOG > Constant 14",
"comparison": "greaterThan",
"type": "Base",
"description": "Left-Hand indicator (comparator) Right-Hand Indicator",
"example": "If the Rate of Change of Apple's price is > the Value 0."
},
{
"lhs": {
"compound": false,
"targetAssets": [
{
"name": "GOOG",
"type": "Stock",
"symbol": "GOOG"
}
],
"side": "Buy",
"type": "DaysSinceOrder",
"orderStatus": "Filled",
"name": "# of Days Since the Last Filled Buy Order of GOOG"
},
"rhs": {
"compound": false,
"targetAssets": [],
"value": 3,
"type": "Value",
"name": "Constant 3"
},
"name": "# of Days Since the Last Filled Buy Order of GOOG > Constant 3",
"comparison": "greaterThan",
"type": "Base",
"description": "Left-Hand indicator (comparator) Right-Hand Indicator",
"example": "If the Rate of Change of Apple's price is > the Value 0."
}
]
},
"action": {
"type": "Buy",
"targetAsset": {
"name": "GOOG",
"type": "Stock",
"symbol": "GOOG"
},
"amount": {
"type": "percent of buying power",
"amount": 100
}
},
"orderExecution": {
"type": "Market"
},
"automaticOrderApproval": false
},
{
"name": "Sell 100% of the portfolio worth of GOOG whenever GOOG's 50-day average price is at or below its 200-day average price and days since the last filled buy order of GOOG is above 14 and days since the last filled sell order of GOOG is above 3.",
"userId": null,
"active": true,
"condition": {
"name": "50 Day GOOG SMA ≤ 200 Day GOOG SMA and # of Days Since the Last Filled Buy Order of GOOG > Constant 14 and # of Days Since the Last Filled Sell Order of GOOG > Constant 3",
"type": "And",
"description": "All conditions must be true",
"example": "If Apple's price is up today but down for the week.",
"conditions": [
{
"lhs": {
"compound": false,
"targetAsset": {
"name": "GOOG",
"type": "Stock",
"symbol": "GOOG"
},
"targetAssets": [],
"window": {
"length": 50,
"interval": "Day"
},
"type": "SimpleMovingAverage",
"name": "50 Day GOOG SMA"
},
"rhs": {
"compound": false,
"targetAsset": {
"name": "GOOG",
"type": "Stock",
"symbol": "GOOG"
},
"targetAssets": [],
"window": {
"length": 200,
"interval": "Day"
},
"type": "SimpleMovingAverage",
"name": "200 Day GOOG SMA"
},
"name": "50 Day GOOG SMA ≤ 200 Day GOOG SMA",
"comparison": "lessThanOrEqual",
"type": "Base",
"description": "Left-Hand indicator (comparator) Right-Hand Indicator",
"example": "If the Rate of Change of Apple's price is > the Value 0."
},
{
"lhs": {
"compound": false,
"targetAssets": [
{
"name": "GOOG",
"type": "Stock",
"symbol": "GOOG"
}
],
"side": "Buy",
"type": "DaysSinceOrder",
"orderStatus": "Filled",
"name": "# of Days Since the Last Filled Buy Order of GOOG"
},
"rhs": {
"compound": false,
"targetAssets": [],
"value": 14,
"type": "Value",
"name": "Constant 14"
},
"name": "# of Days Since the Last Filled Buy Order of GOOG > Constant 14",
"comparison": "greaterThan",
"type": "Base",
"description": "Left-Hand indicator (comparator) Right-Hand Indicator",
"example": "If the Rate of Change of Apple's price is > the Value 0."
},
{
"lhs": {
"compound": false,
"targetAssets": [
{
"name": "GOOG",
"type": "Stock",
"symbol": "GOOG"
}
],
"side": "Sell",
"type": "DaysSinceOrder",
"orderStatus": "Filled",
"name": "# of Days Since the Last Filled Sell Order of GOOG"
},
"rhs": {
"compound": false,
"targetAssets": [],
"value": 3,
"type": "Value",
"name": "Constant 3"
},
"name": "# of Days Since the Last Filled Sell Order of GOOG > Constant 3",
"comparison": "greaterThan",
"type": "Base",
"description": "Left-Hand indicator (comparator) Right-Hand Indicator",
"example": "If the Rate of Change of Apple's price is > the Value 0."
}
]
},
"action": {
"type": "Sell",
"targetAsset": {
"name": "GOOG",
"type": "Stock",
"symbol": "GOOG"
},
"amount": {
"type": "percent of portfolio",
"amount": 100
}
},
"orderExecution": {
"type": "Market"
},
"automaticOrderApproval": false
}
]
No comments yet.