Income Factory's analyses are generated by a rules-based engine. The engine selects a strike price and expiration date based on options market data, the assignment-probability band you've chosen, and a set of quality filters. This article summarizes the key decisions the engine makes and where the underlying data comes from.

The complete methodology is documented at incomefactory.ai/methodology. This article is the summary version; the full page covers edge cases and behavior under unusual conditions in more detail.

What the engine optimizes for

The single goal of the engine is to generate predictable income from stocks you already own, at the assignment probability you've chosen, on a timeframe that doesn't require you to monitor positions daily.

"Predictable" is doing real work there. The engine prefers a smaller premium that plays out as expected over a larger premium that requires guessing the stock's direction mid-week.

How the strike is chosen

The engine picks a strike price based on the option's delta — the market's implied probability that the option will finish in the money (i.e., that assignment will occur). Delta is the engine's proxy for assignment probability.

For each position, the engine finds a strike where the delta falls within the band corresponding to your strategy level:

  • Conservative — lower delta band (lower assignment probability, strike further above current price, less premium)
  • Moderate — middle delta band (the balance point between premium and assignment frequency)
  • Aggressive — higher delta band (higher assignment probability, strike closer to current price, more premium)

The engine does not pick round numbers or arbitrary dollar amounts above the stock price. It picks based on where the options market is currently pricing the probability of assignment.

If no available strike at any acceptable expiration falls within your band, the engine surfaces a skip for the week rather than forcing a trade.

How the expiration is chosen

The engine considers a window of expirations long enough that the premium is meaningful and short enough that you're not committing your shares for too long. Weekly options are excluded — their premium-to-assignment-risk ratio is too thin and they require attention every week to manage.

Within the window, the engine favors expirations that fall just after monthly standard-expiration dates, where options liquidity is highest and bid-ask spreads are tightest.

How earnings are handled

The engine's default is to skip analyses on any position whose underlying company has an earnings report scheduled before the expiration that would otherwise be selected. Earnings reports create concentrated, hard-to-predict price moves; selling a covered call across an earnings date means accepting substantially elevated assignment risk in exchange for the elevated premium that event uncertainty creates.

If no non-earnings expiration is available within the acceptable window, the position gets a skip for the week.

When the engine surfaces a skip

A skip is a real analysis result — the engine's assessment that no trade meets its quality criteria this week. A position gets a skip when:

  • No strike at any acceptable expiration falls within the assignment-probability band for your strategy level
  • Earnings are scheduled before the expiration the engine would otherwise pick
  • The available premium, even at the right strike, is too low relative to the assignment risk
  • The position already has an open call that hasn't expired

Most weeks, some positions in a portfolio get skips. This is expected behavior.

Data sources

Income Factory's analyses are based on end-of-day options data sourced from third-party financial data providers. These providers supply options pricing, implied volatility, delta, and corporate-action data (earnings dates, dividend dates, splits). They are not affiliated with Income Factory and do not endorse the service. Their data is licensed for use within the product; it is not republished as a standalone product.

Timing: The Friday analysis is generated using data from Thursday's market close. By the time you read the analysis on Friday morning, the live market has moved. This is why each analysis includes a floor price — the threshold below which the live market price has moved enough that executing the trade is no longer consistent with the engine's analysis.

Historical simulation: The income estimator uses historical options data across an extended period to generate illustrative income projections. The simulation uses the same analysis rules as the live engine. Historical results reflect actual market conditions during that period, including both high- and low-volatility environments.

What the engine does not do

  • Does not pick stocks. The engine analyzes the positions you give it. It does not recommend buying or selling the underlying stocks.
  • Does not trade naked options, spreads, or any non-covered strategy. Every analysis is a call sold against shares you already own at sufficient quantity to cover the contract.
  • Does not predict market direction. The rules are designed to function without the engine needing to be right about where a stock is headed.
  • Does not see your full financial picture. The engine sees only the positions you've added. It doesn't know about your other accounts, your tax situation, or your financial goals.

For the complete methodology including edge cases, rolling criteria, and intra-week monitoring behavior, see incomefactory.ai/methodology.

Common follow-up questions

Why don't you publish the exact delta thresholds?

We publish the approximate delta the Moderate band targets (~0.25) in the estimator. What stays proprietary is the exact band edges and tolerances for all three levels — the specific numbers that define where Conservative ends and Moderate begins, and so on. You know the decision type (delta-based, within user-chosen assignment-probability bands) and the Moderate anchor; the precise internal cutoffs are what we keep ours.

How current is the data when I place a trade?

The analysis uses Thursday close data. By the time you place the trade Friday, the live market has moved. The floor price accounts for this. For the most current pricing on the specific contract, check the live options chain at your broker.

Has the methodology changed over time?

The core delta-based approach has been consistent. The Methodology page shows the current version with its last-updated date. Material changes to how the engine works are reflected there.

This is educational content, not investment advice. Covered calls involve risk of assignment and loss of upside appreciation.