Use cases · Buy side
VC / growth investor: 20 ways to use Ora
Public growth comps, IPO windows and the health of listed portfolio companies. Each example is a complete, runnable request with the real answers it returned (41 requests, captured 2026-10-31), what they mean and, where it fits, the action it would send.
ora-fin-0.1.1. Another model changes the request JSON and the Playground link; run it there to see its answers.Rule functions and facts used by this player (48)
sma 16max 9offset 8log 4roc 4sqrt 4std 4ema 3ref 3atr 3revenue_growth_yoy 2beat_eps_last 2beat_revenue_last 2beats_last4 1days_to_earnings 1crossup 1adx 1swinghigh 1swinglow 1linreg 1cum 1highestbars 1obv 1sign 1sum 1abs 1eps_surprise_pct 1last_earnings_gap 1last_earnings_move 1pre_earnings_close 1inverted_hammer 1macd 1macdsignal 1morning_star 1stochd 1stochk 1three_white_soldiers 1inside_bar 1lowest 1min 1spinning_top 1tweezer_bottom 1avg 1hl2 1mean 1ohlc4 1rec 1zscore 1
Examples 11–20 of 20 · page 2 of 2
VC / growth investor · example 11
Is NOW's momentum broad or a single spike?
A best-in-class software comp: check whether the advance is steady.
- StateNOW
- Questions5 asked
- Answersreal, captured
- Actionsnone
State
{"symbol":"NOW"} The server fills in the latest completed session.
Questions
cum | rule | cum(C > C[-1]) > cum(C < C[-1])More up days than down days in the whole history |
sign | rule | sum(sign(C - C[-1]), 20) > 2Up days outnumber down days by more than 2 in 20 sessions |
obv | rule | obv() > sma(obv(), 20)On-balance volume above its 20-day average |
highbars | rule | highestbars(H, 60) <= 560-day high set within the last 5 sessions |
rally5 | forecast | Will it rally at least 5% at some point in the next month? A 5% rally within a month |
Answers
| Question | Answer | Reading |
|---|---|---|
cumMore up days than down days in the whole history | 0.9463 | true |
signUp days outnumber down days by more than 2 in 20 sessions | 0.45 | on the line (false) |
obvOn-balance volume above its 20-day average | 0.0598 | false |
highbars60-day high set within the last 5 sessions | 0.55 | on the line (true) |
rally5A 5% rally within a month | 0.675 | 68% · likely |
What it means
For NOW on the session of 2026-10-30: True now: More up days than down days in the whole history. Not true: On-balance volume above its 20-day average. On the line: Up days outnumber down days by more than 2 in 20 sessions; 60-day high set within the last 5 sessions. Forecasts: A 5% rally within a month 68%.
Steady up days with a fresh high describe a healthy comp; a single spike day reads as less durable.
Request JSON
{
"model": "ora-fin-0.1.1",
"state": {
"symbol": "NOW"
},
"questions": {
"cum": {
"type": "yes_no",
"ask": "cum(C > C[-1]) > cum(C < C[-1])"
},
"sign": {
"type": "yes_no",
"ask": "sum(sign(C - C[-1]), 20) > 2"
},
"obv": {
"type": "yes_no",
"ask": "obv() > sma(obv(), 20)"
},
"highbars": {
"type": "yes_no",
"ask": "highestbars(H, 60) <= 5"
},
"rally5": {
"type": "yes_no",
"instructions": "Will it rally at least 5% at some point in the next month?"
}
}
}Response JSON (NOW, real)
{
"model": "ora-fin-0.1.1",
"answers": {
"cum": {
"yes_no": 0.9463,
"rule": "cum(C > C[-1]) > cum(C < C[-1])",
"basis": "rule"
},
"sign": {
"yes_no": 0.45,
"rule": "sum(sign(C - C[-1]), 20) > 2",
"basis": "rule"
},
"obv": {
"yes_no": 0.0598,
"rule": "obv() > sma(obv(), 20)",
"basis": "rule"
},
"highbars": {
"yes_no": 0.55,
"rule": "highestbars(H, 60) <= 5",
"basis": "rule"
},
"rally5": {
"yes_no": 0.675
}
},
"context": {
"symbol": "NOW",
"as_of": "2026-10-30"
}
}VC / growth investor · example 12
Consumer internet comps: AMZN, NFLX, EBAY, SNAP
For a consumer app round, check how listed consumer internet names trade.
- State4 symbols
- Questions3 asked
- Answersreal, captured
- Actionsnone
State
{"symbol":"AMZN"} then NFLX, EBAY, SNAP, one request each. The server fills in the latest completed session.
Questions
trend | English → rule | Is the stock above its 200-day moving average? |
dd | rule | C < 0.8 * max(H, 252)More than 20% off the 52-week high |
beat | English → rule | Did revenue beat estimates last quarter? |
Answers
| Symbol | trendrule | ddrule | beatrule |
|---|---|---|---|
AMZN | 0.3073 | 0.0947 | 0.1409 |
NFLX | 0.0537 | 0.9463 | 0.8591 |
EBAY | 0.9463 | 0.0537 | 0.8591 |
SNAP | 0.3858 | 0.9463 | 0.8591 |
true false not known for rules; forecasts are odds. Hover a column for its question.
What it means
Session of 2026-10-30, 4 symbols: Is the stock above its 200-day moving average: true for EBAY of 4. More than 20% off the 52-week high: true for NFLX, SNAP of 4. Did revenue beat estimates last quarter: true for NFLX, EBAY, SNAP of 4.
Leaders trending while smaller names sit in drawdowns says the market pays for scale, which matters for an early-stage exit path.
Request JSON (AMZN; the others differ only in the symbol)
{
"model": "ora-fin-0.1.1",
"state": {
"symbol": "AMZN"
},
"questions": {
"trend": {
"type": "yes_no",
"instructions": "Is the stock above its 200-day moving average?"
},
"dd": {
"type": "yes_no",
"ask": "C < 0.8 * max(H, 252)"
},
"beat": {
"type": "yes_no",
"instructions": "Did revenue beat estimates last quarter?"
}
}
}Response JSON (AMZN, real)
{
"model": "ora-fin-0.1.1",
"answers": {
"trend": {
"yes_no": 0.3073,
"rule": "C > sma(C, 200)",
"basis": "comparison"
},
"dd": {
"yes_no": 0.0947,
"rule": "C < 0.8 * max(H, 252)",
"basis": "rule"
},
"beat": {
"yes_no": 0.1409,
"rule": "beat_revenue_last > 0.5",
"basis": "pattern"
}
},
"context": {
"symbol": "AMZN",
"as_of": "2026-10-30"
}
}VC / growth investor · example 13
How did CRM's last report land?
The partner on a SaaS board wants the read on the largest comp's last quarter before a board meeting.
- StateCRM
- Questions6 asked
- Answersreal, captured
- Actionsnone
State
{"symbol":"CRM"} The server fills in the latest completed session.
Questions
beat | English → rule | Did the stock beat EPS estimates last quarter? |
surprise | English → rule | Did EPS beat estimates by more than 5% last quarter? |
move | English → rule | Was the last earnings reaction bigger than 5%? |
gap | English → rule | Did the stock gap up after its last earnings? |
above_pre | rule | C > pre_earnings_closeHolding above the pre-earnings close |
beat_next | forecast | Will the stock beat earnings next quarter? Beating earnings next quarter |
Answers
| Question | Answer | Reading |
|---|---|---|
beatDid the stock beat EPS estimates last quarter compiled to beat_eps_last > 0.5 | 0.8591 | true |
surpriseDid EPS beat estimates by more than 5% last quarter compiled to eps_surprise_pct > 5 | 0.9463 | true |
moveWas the last earnings reaction bigger than 5% compiled to abs(last_earnings_move) > 5 | 0.9463 | true |
gapDid the stock gap up after its last earnings compiled to last_earnings_gap > 0 | 0.9463 | true |
above_preHolding above the pre-earnings close | 0.8829 | true |
beat_nextBeating earnings next quarter | 0.548 | 55% · close to even |
What it means
For CRM on the session of 2026-10-30: True now: Did the stock beat EPS estimates last quarter; Did EPS beat estimates by more than 5% last quarter; Was the last earnings reaction bigger than 5%; Did the stock gap up after its last earnings; Holding above the pre-earnings close. Forecasts: Beating earnings next quarter 55%.
A beat that sold off says the bar is about guidance, which is useful framing for a portfolio company's own plan.
Request JSON
{
"model": "ora-fin-0.1.1",
"state": {
"symbol": "CRM"
},
"questions": {
"beat": {
"type": "yes_no",
"instructions": "Did the stock beat EPS estimates last quarter?"
},
"surprise": {
"type": "yes_no",
"instructions": "Did EPS beat estimates by more than 5% last quarter?"
},
"move": {
"type": "yes_no",
"instructions": "Was the last earnings reaction bigger than 5%?"
},
"gap": {
"type": "yes_no",
"instructions": "Did the stock gap up after its last earnings?"
},
"above_pre": {
"type": "yes_no",
"ask": "C > pre_earnings_close"
},
"beat_next": {
"type": "yes_no",
"instructions": "Will the stock beat earnings next quarter?"
}
}
}Response JSON (CRM, real)
{
"model": "ora-fin-0.1.1",
"answers": {
"beat": {
"yes_no": 0.8591,
"rule": "beat_eps_last > 0.5",
"basis": "pattern"
},
"surprise": {
"yes_no": 0.9463,
"rule": "eps_surprise_pct > 5",
"basis": "pattern"
},
"move": {
"yes_no": 0.9463,
"rule": "abs(last_earnings_move) > 5",
"basis": "pattern"
},
"gap": {
"yes_no": 0.9463,
"rule": "last_earnings_gap > 0",
"basis": "pattern"
},
"above_pre": {
"yes_no": 0.8829,
"rule": "C > pre_earnings_close",
"basis": "rule"
},
"beat_next": {
"yes_no": 0.548
}
},
"context": {
"symbol": "CRM",
"as_of": "2026-10-30"
}
}abs beat_eps_last eps_surprise_pct last_earnings_gap last_earnings_move pre_earnings_close
VC / growth investor · example 14
Semiconductor cycle turn signals for a hardware fund
Hardware investments are cyclical; look for bottoming candles and momentum turns in SOXX.
- StateSOXX
- Questions6 asked
- Answersreal, captured
- Actionsnone
State
{"symbol":"SOXX"} The server fills in the latest completed session.
Questions
morning | rule | morning_star()morning star candle: A red bar, a small bar (half its body or less) that stays under its close, then a green bar closing above the middle of the first. |
soldiers | rule | three_white_soldiers()three white soldiers candle: Three green bars, each closing higher and opening inside the previous body. |
inverted | rule | inverted_hammer()inverted hammer candle: Shooting-star shape after a five-bar decline. |
stoch | rule | stochk(14) > stochd(14)Stochastic %K above %D |
macd_x | English → rule | Did MACD cross above its signal line today? |
rally5 | forecast | Will it rally at least 5% at some point in the next month? A 5% rally within a month |
Answers
| Question | Answer | Reading |
|---|---|---|
morningmorning star candle: A red bar, a small bar (half its body or less) that stays under its close, then a green bar closing above the middle of the first. | 0.0599 | false |
soldiersthree white soldiers candle: Three green bars, each closing higher and opening inside the previous body. | 0.0537 | false |
invertedinverted hammer candle: Shooting-star shape after a five-bar decline. | 0.0537 | false |
stochStochastic %K above %D | 0.4207 | on the line (false) |
macd_xDid MACD cross above its signal line today compiled to (macd(C) > macdsignal(C)) and (ref(macd(C), -1) <= ref(macdsignal(C), -1)) | 0.2359 | false |
rally5A 5% rally within a month | 0.769 | 77% · likely |
What it means
For SOXX on the session of 2026-10-30: Not true: morning star candle: A red bar, a small bar (half its body or less) that stays under its close, then a green bar closing above the middle of the first.; three white soldiers candle: Three green bars, each closing higher and opening inside the previous body.; inverted hammer candle: Shooting-star shape after a five-bar decline.; Did MACD cross above its signal line today. On the line: Stochastic %K above %D. Forecasts: A 5% rally within a month 77%.
Bottoming candles with a MACD cross are early, not proof; the fund watches for the trend rules to follow.
Request JSON
{
"model": "ora-fin-0.1.1",
"state": {
"symbol": "SOXX"
},
"questions": {
"morning": {
"type": "yes_no",
"ask": "morning_star()"
},
"soldiers": {
"type": "yes_no",
"ask": "three_white_soldiers()"
},
"inverted": {
"type": "yes_no",
"ask": "inverted_hammer()"
},
"stoch": {
"type": "yes_no",
"ask": "stochk(14) > stochd(14)"
},
"macd_x": {
"type": "yes_no",
"instructions": "Did MACD cross above its signal line today?"
},
"rally5": {
"type": "yes_no",
"instructions": "Will it rally at least 5% at some point in the next month?"
}
}
}Response JSON (SOXX, real)
{
"model": "ora-fin-0.1.1",
"answers": {
"morning": {
"yes_no": 0.0599,
"rule": "morning_star()",
"basis": "rule"
},
"soldiers": {
"yes_no": 0.0537,
"rule": "three_white_soldiers()",
"basis": "rule"
},
"inverted": {
"yes_no": 0.0537,
"rule": "inverted_hammer()",
"basis": "rule"
},
"stoch": {
"yes_no": 0.4207,
"rule": "stochk(14) > stochd(14)",
"basis": "rule"
},
"macd_x": {
"yes_no": 0.2359,
"rule": "(macd(C) > macdsignal(C)) and (ref(macd(C), -1) <= ref(macdsignal(C), -1))",
"basis": "comparison"
},
"rally5": {
"yes_no": 0.769
}
},
"context": {
"symbol": "SOXX",
"as_of": "2026-10-30"
}
}inverted_hammer macd macdsignal morning_star ref stochd stochk three_white_soldiers
VC / growth investor · example 15
Rates and growth valuations: TLT versus ARKK
Long-duration growth equity is rate sensitive; read the bond trend next to the growth fund trend.
- State2 symbols
- Questions4 asked
- Answersreal, captured
- Actionsnone
State
{"symbol":"TLT"} then ARKK, one request each. The server fills in the latest completed session.
Questions
trend | English → rule | Is the stock above its 50-day moving average? |
mom | rule | roc(C, 20) > 5Up more than 5% in 20 sessions |
ema | rule | C > ema(C, 100)Above the 100-day exponential average |
up_week | forecast | Will the stock be higher in a week? Higher in a week |
Answers
| Symbol | trendrule | momrule | emarule | up_weekforecast |
|---|---|---|---|---|
TLT | 0.8482 | 0.6397 | 0.5694 | 0.561 |
ARKK | 0.101 | 0.0701 | 0.21 | 0.505 |
true false not known for rules; forecasts are odds. Hover a column for its question.
What it means
Session of 2026-10-30, 2 symbols: Is the stock above its 50-day moving average: true for TLT of 2. Up more than 5% in 20 sessions: true for TLT of 2. Above the 100-day exponential average: true for none of 2. Highest odds for “Higher in a week”: TLT at 56%.
Bonds and growth rising together point to falling discount rates, a tailwind for growth valuations.
Request JSON (TLT; the others differ only in the symbol)
{
"model": "ora-fin-0.1.1",
"state": {
"symbol": "TLT"
},
"questions": {
"trend": {
"type": "yes_no",
"instructions": "Is the stock above its 50-day moving average?"
},
"mom": {
"type": "yes_no",
"ask": "roc(C, 20) > 5"
},
"ema": {
"type": "yes_no",
"ask": "C > ema(C, 100)"
},
"up_week": {
"type": "yes_no",
"instructions": "Will the stock be higher in a week?"
}
}
}Response JSON (TLT, real)
{
"model": "ora-fin-0.1.1",
"answers": {
"trend": {
"yes_no": 0.8482,
"rule": "C > sma(C, 50)",
"basis": "comparison"
},
"mom": {
"yes_no": 0.6397,
"rule": "roc(C, 20) > 5",
"basis": "rule"
},
"ema": {
"yes_no": 0.5694,
"rule": "C > ema(C, 100)",
"basis": "rule"
},
"up_week": {
"yes_no": 0.561
}
},
"context": {
"symbol": "TLT",
"as_of": "2026-10-30"
}
}VC / growth investor · example 16
Recent listing check: is a new issue holding its gains?
A peer company listed recently; check whether it holds above its early range or has broken down.
- StateSMCI
- Questions6 asked
- Answersreal, captured
- Actionsnone
State
{"symbol":"SMCI"} The server fills in the latest completed session.
Questions
range_top | English → rule | Is the stock in the top 10% of its 20-day range? |
breakdown | rule | C < lowest(L, 20)Closed under the 20-day low |
tweezer | rule | tweezer_bottom()tweezer bottom candle: Red then green, with lows within 0.1% of each other. |
spin | rule | spinning_top()spinning top candle: Small body (10–30% of range) with wicks of at least a quarter of the range on both sides. |
inside | rule | inside_bar()inside bar candle: Today's high and low are inside yesterday's (equal counts). |
drop10 | forecast | Will it drop at least 10% at some point in the next month? A 10% drawdown within a month |
Answers
| Question | Answer | Reading |
|---|---|---|
range_topIs the stock in the top 10% of its 20-day range compiled to (C - min(L, 20)) / (max(H, 20) - min(L, 20)) >= 0.9 | 0.0557 | false |
breakdownClosed under the 20-day low | 0.2515 | false |
tweezertweezer bottom candle: Red then green, with lows within 0.1% of each other. | 0.0556 | false |
spinspinning top candle: Small body (10–30% of range) with wicks of at least a quarter of the range on both sides. | 0.2503 | false |
insideinside bar candle: Today's high and low are inside yesterday's (equal counts). | 0.0746 | false |
drop10A 10% drawdown within a month | 0.752 | 75% · likely |
What it means
For SMCI on the session of 2026-10-30: Not true: Is the stock in the top 10% of its 20-day range; Closed under the 20-day low; tweezer bottom candle: Red then green, with lows within 0.1% of each other.; spinning top candle: Small body (10–30% of range) with wicks of at least a quarter of the range on both sides.; inside bar candle: Today's high and low are inside yesterday's (equal counts).. Forecasts: A 10% drawdown within a month 75%.
A new issue in the top of its range tells bankers the follow-on window is open for similar companies.
Request JSON
{
"model": "ora-fin-0.1.1",
"state": {
"symbol": "SMCI"
},
"questions": {
"range_top": {
"type": "yes_no",
"instructions": "Is the stock in the top 10% of its 20-day range?"
},
"breakdown": {
"type": "yes_no",
"ask": "C < lowest(L, 20)"
},
"tweezer": {
"type": "yes_no",
"ask": "tweezer_bottom()"
},
"spin": {
"type": "yes_no",
"ask": "spinning_top()"
},
"inside": {
"type": "yes_no",
"ask": "inside_bar()"
},
"drop10": {
"type": "yes_no",
"instructions": "Will it drop at least 10% at some point in the next month?"
}
}
}Response JSON (SMCI, real)
{
"model": "ora-fin-0.1.1",
"answers": {
"range_top": {
"yes_no": 0.0557,
"rule": "(C - min(L, 20)) / (max(H, 20) - min(L, 20)) >= 0.9",
"basis": "pattern"
},
"breakdown": {
"yes_no": 0.2515,
"rule": "C < lowest(L, 20)",
"basis": "rule"
},
"tweezer": {
"yes_no": 0.0556,
"rule": "tweezer_bottom()",
"basis": "rule"
},
"spin": {
"yes_no": 0.2503,
"rule": "spinning_top()",
"basis": "rule"
},
"inside": {
"yes_no": 0.0746,
"rule": "inside_bar()",
"basis": "rule"
},
"drop10": {
"yes_no": 0.752
}
},
"context": {
"symbol": "SMCI",
"as_of": "2026-10-30"
}
}VC / growth investor · example 17
Secondary sale timing on a listed stake: PANW
The fund plans to sell part of a listed stake; prefer strength with good liquidity.
- StatePANW
- Questions5 asked
- Answersreal, captured
- Actions2 rules · dry run
State
{"symbol":"PANW"} The server fills in the latest completed session.
Questions
liquid | rule | avg(C * V, 20) > 100000000Trades more than $100 million a day |
trend | rule | C > ema(C, 20) and ema(C, 20) > sma(C, 50) and sma(C, 50) > sma(C, 200)Stacked averages: close > 20 EMA > 50 > 200 |
ext | English → rule | Is price extended more than 2 ATR above its 20-day average? |
near_high | rule | C >= 0.98 * max(H, 252)Within 2% of the 52-week high |
drop5 | forecast | Will it drop at least 5% at some point in the next month? A 5% drawdown within a month |
Answers
| Question | Answer | Reading |
|---|---|---|
liquidTrades more than $100 million a day | 0.9463 | true |
trendStacked averages: close > 20 EMA > 50 > 200 | 0.2318 | false |
extIs price extended more than 2 ATR above its 20-day average compiled to C - sma(C, 20) > 2 * atr(14) | 0.0666 | false |
near_highWithin 2% of the 52-week high | 0.0617 | false |
drop5A 5% drawdown within a month | 0.727 | 73% · likely |
Actions
Rules on the answers decide what to send.
trend >= 0.6 and liquid >= 0.6 and ext < 0.5→Webhookzapier-lp-reportingelse→Slackpartners{
"text": "PANW (2026-10-30): sale window not open (trend 23%, stretched 7%)."
}What it means
For PANW on the session of 2026-10-30: True now: Trades more than $100 million a day. Not true: Stacked averages: close > 20 EMA > 50 > 200; Is price extended more than 2 ATR above its 20-day average; Within 2% of the 52-week high. Forecasts: A 5% drawdown within a month 73%. Fired: wait (Slack → partners).
A trending, liquid, not-stretched stock opens the window and logs it for LP reporting; otherwise the partners get a hold note.
Request JSON
{
"model": "ora-fin-0.1.1",
"state": {
"symbol": "PANW"
},
"questions": {
"liquid": {
"type": "yes_no",
"ask": "avg(C * V, 20) > 100000000"
},
"trend": {
"type": "yes_no",
"ask": "C > ema(C, 20) and ema(C, 20) > sma(C, 50) and sma(C, 50) > sma(C, 200)"
},
"ext": {
"type": "yes_no",
"instructions": "Is price extended more than 2 ATR above its 20-day average?"
},
"near_high": {
"type": "yes_no",
"ask": "C >= 0.98 * max(H, 252)"
},
"drop5": {
"type": "yes_no",
"instructions": "Will it drop at least 5% at some point in the next month?"
}
},
"actions": [
{
"id": "sell_window",
"when": "trend >= 0.6 and liquid >= 0.6 and ext < 0.5",
"do": "webhook",
"connection": "zapier-lp-reporting",
"body": {
"event": "sale_window_open",
"symbol": "{{symbol}}",
"p_trend": "{{trend}}",
"p_liquid": "{{liquid}}",
"p_drop5": "{{drop5}}",
"as_of": "{{as_of}}"
}
},
{
"id": "wait",
"when": "else",
"do": "slack",
"connection": "partners",
"message": "{{symbol}} ({{as_of}}): sale window not open (trend {{trend|pct}}, stretched {{ext|pct}})."
}
],
"dry_run": true
}Response JSON (PANW, real)
{
"model": "ora-fin-0.1.1",
"answers": {
"liquid": {
"yes_no": 0.9463,
"rule": "avg(C * V, 20) > 100000000",
"basis": "rule"
},
"trend": {
"yes_no": 0.2318,
"rule": "C > ema(C, 20) and ema(C, 20) > sma(C, 50) and sma(C, 50) > sma(C, 200)",
"basis": "rule"
},
"ext": {
"yes_no": 0.0666,
"rule": "C - sma(C, 20) > 2 * atr(14)",
"basis": "pattern"
},
"near_high": {
"yes_no": 0.0617,
"rule": "C >= 0.98 * max(H, 252)",
"basis": "rule"
},
"drop5": {
"yes_no": 0.727
}
},
"context": {
"symbol": "PANW",
"as_of": "2026-10-30"
},
"actions": [
{
"id": "sell_window",
"fired": false,
"status": "skipped"
},
{
"id": "wait",
"fired": true,
"status": "dry_run",
"do": "slack",
"connection": "partners",
"preview": {
"text": "PANW (2026-10-30): sale window not open (trend 23%, stretched 7%)."
}
}
]
}VC / growth investor · example 18
Emerging-market tech comps: KWEB, TSM, BABA
For a fund investing in Asia, check the listed tech names that set public comparables.
- State3 symbols
- Questions3 asked
- Answersreal, captured
- Actionsnone
State
{"symbol":"KWEB"} then TSM, BABA, one request each. The server fills in the latest completed session.
Questions
trend | English → rule | Is the stock above its 200-day moving average? |
mom | rule | C > C[-63]Higher than three months ago |
dd | rule | C < 0.8 * max(H, 252)More than 20% off the 52-week high |
Answers
| Symbol | trendrule | momrule | ddrule |
|---|---|---|---|
KWEB | 0.0537 | 0.0537 | 0.9463 |
TSM | 0.7124 | 0.5387 | 0.1622 |
BABA | 0.0537 | 0.0541 | 0.9463 |
true false not known for rules; forecasts are odds. Hover a column for its question.
What it means
Session of 2026-10-30, 3 symbols: Is the stock above its 200-day moving average: true for TSM of 3. Higher than three months ago: true for none of 3. More than 20% off the 52-week high: true for KWEB, BABA of 3.
Asian tech in an uptrend supports regional exit plans; drawdowns push exits toward US listings or trade sales.
Request JSON (KWEB; the others differ only in the symbol)
{
"model": "ora-fin-0.1.1",
"state": {
"symbol": "KWEB"
},
"questions": {
"trend": {
"type": "yes_no",
"instructions": "Is the stock above its 200-day moving average?"
},
"mom": {
"type": "yes_no",
"ask": "C > C[-63]"
},
"dd": {
"type": "yes_no",
"ask": "C < 0.8 * max(H, 252)"
}
}
}Response JSON (KWEB, real)
{
"model": "ora-fin-0.1.1",
"answers": {
"trend": {
"yes_no": 0.0537,
"rule": "C > sma(C, 200)",
"basis": "comparison"
},
"mom": {
"yes_no": 0.0537,
"rule": "C > C[-63]",
"basis": "rule"
},
"dd": {
"yes_no": 0.9463,
"rule": "C < 0.8 * max(H, 252)",
"basis": "rule"
}
},
"context": {
"symbol": "KWEB",
"as_of": "2026-10-30"
}
}VC / growth investor · example 19
Smoothed growth trend on QQQ for the quarterly letter
The quarterly LP letter describes the public backdrop; use slow, smoothed filters so the description does not flip each week.
- StateQQQ
- Questions5 asked
- Answersreal, captured
- Actionsnone
State
{"symbol":"QQQ"} The server fills in the latest completed session.
Questions
rec | rule | C > rec(C, self + 0.02 * (C - self))Above a slow recursive trend line |
ohlc | rule | ohlc4() > sma(ohlc4(), 50)Average bar price above its 50-day average |
hl2 | rule | hl2() > mean(hl2(), 100)Bar midpoint above its 100-day mean |
trend | rule | sma(C, 200) > ref(sma(C, 200), -20)The 200-day average is rising |
up_week | forecast | Will the stock be higher in a week? Higher in a week |
Answers
| Question | Answer | Reading |
|---|---|---|
recAbove a slow recursive trend line | 0.0976 | false |
ohlcAverage bar price above its 50-day average | 0.0674 | false |
hl2Bar midpoint above its 100-day mean | 0.0819 | false |
trendThe 200-day average is rising | 0.9463 | true |
up_weekHigher in a week | 0.561 | 56% · close to even |
What it means
For QQQ on the session of 2026-10-30: True now: The 200-day average is rising. Not true: Above a slow recursive trend line; Average bar price above its 50-day average; Bar midpoint above its 100-day mean. Forecasts: Higher in a week 56%.
Slow filters agreeing means the letter can describe the backdrop as an uptrend without hedging.
Request JSON
{
"model": "ora-fin-0.1.1",
"state": {
"symbol": "QQQ"
},
"questions": {
"rec": {
"type": "yes_no",
"ask": "C > rec(C, self + 0.02 * (C - self))"
},
"ohlc": {
"type": "yes_no",
"ask": "ohlc4() > sma(ohlc4(), 50)"
},
"hl2": {
"type": "yes_no",
"ask": "hl2() > mean(hl2(), 100)"
},
"trend": {
"type": "yes_no",
"ask": "sma(C, 200) > ref(sma(C, 200), -20)"
},
"up_week": {
"type": "yes_no",
"instructions": "Will the stock be higher in a week?"
}
}
}Response JSON (QQQ, real)
{
"model": "ora-fin-0.1.1",
"answers": {
"rec": {
"yes_no": 0.0976,
"rule": "C > rec(C, self + 0.02 * (C - self))",
"basis": "rule"
},
"ohlc": {
"yes_no": 0.0674,
"rule": "ohlc4() > sma(ohlc4(), 50)",
"basis": "rule"
},
"hl2": {
"yes_no": 0.0819,
"rule": "hl2() > mean(hl2(), 100)",
"basis": "rule"
},
"trend": {
"yes_no": 0.9463,
"rule": "sma(C, 200) > ref(sma(C, 200), -20)",
"basis": "rule"
},
"up_week": {
"yes_no": 0.561
}
},
"context": {
"symbol": "QQQ",
"as_of": "2026-10-30"
}
}VC / growth investor · example 20
Volatility gate before pricing a growth round
Rounds priced during market stress get repriced later; check volatility first.
- StateQQQ
- Questions4 asked
- Answersreal, captured
- Actions2 rules · dry run
State
{"symbol":"QQQ"} The server fills in the latest completed session.
Questions
atr | English → rule | Is the 14-day ATR less than 2% of the price? |
vol5 | English → rule | Is 5-day volatility higher than 20-day volatility? |
shock | rule | zscore(C / C[-1] - 1, 20) < -2A two-sigma down day |
vol_up | forecast | Will volatility be higher over the next month? Higher volatility next month |
Answers
| Question | Answer | Reading |
|---|---|---|
atrIs the 14-day ATR less than 2% of the price compiled to atr(14) / C < 0.02 | 0.824 | true |
vol5Is 5-day volatility higher than 20-day volatility compiled to std(log(C / C[-1]), 5) * sqrt(5 / 4) > std(log(C / C[-1]), 20) * sqrt(20 / 19) | 0.9069 | true |
shockA two-sigma down day | 0.6278 | true |
vol_upHigher volatility next month | 0.523 | 52% · close to even |
Actions
Rules on the answers decide what to send.
atr >= 0.6 and shock < 0.5→Emailmeelse→Emailme{
"subject": "Pricing backdrop stressed (2026-10-30)",
"text": "QQQ volatility elevated (5d over 20d 91%, shock 63%). Consider structure over headline price."
}What it means
For QQQ on the session of 2026-10-30: True now: Is the 14-day ATR less than 2% of the price; Is 5-day volatility higher than 20-day volatility; A two-sigma down day. Forecasts: Higher volatility next month 52%. Fired: stressed (Email → me).
A stressed backdrop is a reason to negotiate structure rather than headline valuation.
Request JSON
{
"model": "ora-fin-0.1.1",
"state": {
"symbol": "QQQ"
},
"questions": {
"atr": {
"type": "yes_no",
"instructions": "Is the 14-day ATR less than 2% of the price?"
},
"vol5": {
"type": "yes_no",
"instructions": "Is 5-day volatility higher than 20-day volatility?"
},
"shock": {
"type": "yes_no",
"ask": "zscore(C / C[-1] - 1, 20) < -2"
},
"vol_up": {
"type": "yes_no",
"instructions": "Will volatility be higher over the next month?"
}
},
"actions": [
{
"id": "calm",
"when": "atr >= 0.6 and shock < 0.5",
"do": "email",
"connection": "me",
"subject": "Pricing backdrop calm ({{as_of}})",
"message": "QQQ ATR under 2% ({{atr|pct}}), no return shock. Higher vol next month: {{vol_up|pct}}."
},
{
"id": "stressed",
"when": "else",
"do": "email",
"connection": "me",
"subject": "Pricing backdrop stressed ({{as_of}})",
"message": "QQQ volatility elevated (5d over 20d {{vol5|pct}}, shock {{shock|pct}}). Consider structure over headline price."
}
],
"dry_run": true
}Response JSON (QQQ, real)
{
"model": "ora-fin-0.1.1",
"answers": {
"atr": {
"yes_no": 0.824,
"rule": "atr(14) / C < 0.02",
"basis": "pattern"
},
"vol5": {
"yes_no": 0.9069,
"rule": "std(log(C / C[-1]), 5) * sqrt(5 / 4) > std(log(C / C[-1]), 20) * sqrt(20 / 19)",
"basis": "pattern"
},
"shock": {
"yes_no": 0.6278,
"rule": "zscore(C / C[-1] - 1, 20) < -2",
"basis": "rule"
},
"vol_up": {
"yes_no": 0.523
}
},
"context": {
"symbol": "QQQ",
"as_of": "2026-10-30"
},
"actions": [
{
"id": "calm",
"fired": false,
"status": "skipped"
},
{
"id": "stressed",
"fired": true,
"status": "dry_run",
"do": "email",
"connection": "me",
"preview": {
"subject": "Pricing backdrop stressed (2026-10-30)",
"text": "QQQ volatility elevated (5d over 20d 91%, shock 63%). Consider structure over headline price."
}
}
]
}Information, not investment advice. Rules answer from the latest completed daily session; forecasts are probabilities. Actions ran as dry runs: nothing was sent. More in Buy side: Financial advisor / RIA, Wealth manager, Family office, Hedge fund PM, Quant researcher, Portfolio manager (long-only), Risk manager, Private equity, Fund-of-funds allocator.