{"schema_version":"research_spec_v1","research_id":"research_resta_sma_btcusdt_oos_validation","source_material":{"media_type":"application/pdf","sha256":"829e32408fb6a49e8a08ee4d57a39189c1d8d64426df8d109d5cfcc8f6be8618"},"research_context":{"classification":"OUT_OF_SAMPLE_VALIDATION","research_question":"Do the published Resta, Pagnottoni, and De Giuli daily SMA12 and SMA24 parameterizations, with SMA12 as the paper's primary daily SMA result, meet the frozen Strategy Lab primary-member excess-return criterion versus identically costed buy-and-hold on Binance Spot BTCUSDT over the post-publication interval [2020-06-01, 2026-09-01) under the declared Strategy Lab conventions?","substitutions":[{"type":"SAMPLE_PERIOD_CHANGED","detail":"The source uses Bitcoin data from 2012-01-01 through 2019-08-20 and reports 31 three-month windows plus July-August 2019; this out-of-sample validation freezes the later post-publication interval [2020-06-01, 2026-09-01)."},{"type":"SOURCE_DATASET_CHANGED","detail":"The source uses HLOC Bitcoin series available through Kaggle (Btc1d); Strategy Lab uses checksum-verified Binance Public Data Spot daily archives."},{"type":"MARKET_PROXY_CHANGED","detail":"The source describes a Bitcoin price series without naming the supported Binance BTCUSDT spot market; Strategy Lab evaluates BTCUSDT, using USDT-quoted BTC as its fixed market proxy."},{"type":"EXECUTION_CONVENTION_STRATEGY_LAB_DEFINED","detail":"The source applies TA separately in three-month windows and describes MA crossovers as +1 buy and -1 sell signals, with a signed-return payoff. Strategy Lab instead continuously maps a completed close strictly above its arithmetic SMA to LONG and otherwise to FLAT, starts FLAT, retains no short position, uses the latest lookback completed closes including the signal close, and executes state changes at the next UTC daily open. The source equation's t-k through t summation with a k denominator conflicts with its prose that daily SMAs consider the previous 12 or 24 days; the declared lookbacks follow the source's unambiguous SMA12/SMA24 labels and prose, while this current close-window implementation is explicitly not claimed to resolve that equation ambiguity."},{"type":"ACCOUNTING_CONVENTION_STRATEGY_LAB_DEFINED","detail":"The source expresses MA payoffs through signed continuous returns and reports performance over separate rolling windows; Strategy Lab uses fractional all-in long_flat USDT accounting with unchanged FLAT cash and terminal liquidation."},{"type":"COST_MODEL_STRATEGY_LAB_DEFINED","detail":"The source does not state Strategy Lab's frozen per-side transaction-cost schedule; Strategy Lab applies 15 bps primary cost with 20 and 25 bps diagnostic costs to both strategy and benchmark."},{"type":"STATISTICAL_TEST_STRATEGY_LAB_DEFINED","detail":"The source compares annualized return, Sharpe ratio, downside and spread performance measures (with risk-free rate zero for its Sharpe calculation) and makes no Strategy Lab HAC family decision. Strategy Lab applies excess_return_v2 independently to each member; its primary-plus-robustness rule makes SMA12 decisive and retains SMA24 as descriptive robustness only."}]},"family":{"schema_version":"study_family_v1","members":[{"id":"sma_12","member_criterion_version":"excess_return_v2","specification":{"rules":{"schema_version":"spec_v2","methodology_version":"research_v2","mechanism":"close_sma","lookback":12,"source":"binance_public_spot","symbol":"BTCUSDT","interval":"1d","exposure":"long_flat","start":"2020-06-01","end":"2026-09-01","warmup_days":12,"execution":"next_daily_open","accounting":"fractional_all_in_terminal_liquidation_v1","primary_cost_bps":15,"diagnostic_cost_bps":[20,25],"benchmark":"identically_costed_buy_and_hold","criteria_version":"excess_return_v2"},"source":{"description":"Published daily SMA12 trend-following member: the paper identifies the 12-time-unit simple moving average as a daily rule and its discussion narratively highlights MA12 as the best daily SMA. Strategy Lab maps it to close_sma with the separately declared source-versus-platform signal and position differences.","title":"Technical Analysis on the Bitcoin Market: Trading Opportunities or Investors’ Pitfall?","author":"Marina Resta; Paolo Pagnottoni; Maria Elena De Giuli","url":"https://doi.org/10.3390/risks8020044","date":"2020","excerpt":""},"cost_rationale":"Apply the current Strategy Lab standing per-side cost policy: 15 bps primary, with 20 and 25 bps diagnostics; the source does not define this Strategy Lab schedule.","date_selection_reason":"This is a pre-frozen post-publication out-of-sample interval: it begins on 2020-06-01, after the paper's 2020-05-06 publication and its data ending 2019-08-20, and ends exclusively on 2026-09-01, before declaration and without inspecting Strategy Lab outcomes.","prior_inspection":"known","provenance":{"schema_version":{"origin":"SUPPORTED_MECHANISM_DEFINITION","evidence":"Current Strategy Lab executable specification schema."},"methodology_version":{"origin":"SUPPORTED_MECHANISM_DEFINITION","evidence":"Current Strategy Lab deterministic research methodology."},"mechanism":{"origin":"USER_EXPLICIT","evidence":"The source defines a daily simple moving-average rule; this acceptance maps SMA12 to supported close_sma with material differences declared in research_context."},"lookback":{"origin":"USER_EXPLICIT","evidence":"Table 2 names SMA12 as a 12-time-unit simple moving average, used on daily data."},"source":{"origin":"STANDING_POLICY_DEFAULT","evidence":"Strategy Lab's current capture source is Binance Public Data Spot; the Kaggle source-data difference is declared in research_context."},"symbol":{"origin":"STANDING_POLICY_DEFAULT","evidence":"BTCUSDT is the current supported Strategy Lab Bitcoin market."},"interval":{"origin":"USER_EXPLICIT","evidence":"The selected source member is daily; this acceptance remains daily."},"exposure":{"origin":"STANDING_POLICY_DEFAULT","evidence":"Current Strategy Lab supports long_flat only; the source signed-signal difference is declared in research_context."},"start":{"origin":"USER_EXPLICIT","evidence":"2020-06-01 is the first chosen UTC day after the paper's May 2020 publication, frozen before evaluation."},"end":{"origin":"USER_EXPLICIT","evidence":"2026-09-01 is the exclusive end selected before evaluation for the later-sample validation."},"warmup_days":{"origin":"SUPPORTED_MECHANISM_DEFINITION","evidence":"close_sma requires warmup_days equal to lookback: 12."},"execution":{"origin":"STANDING_POLICY_DEFAULT","evidence":"Current Strategy Lab execution convention is next_daily_open; the source crossover/window/position differences are declared in research_context."},"accounting":{"origin":"STANDING_POLICY_DEFAULT","evidence":"Current Strategy Lab accounting is fractional_all_in_terminal_liquidation_v1; the source signed-return accounting difference is declared in research_context."},"primary_cost_bps":{"origin":"STANDING_POLICY_DEFAULT","evidence":"Current Strategy Lab primary cost is 15 bps per executed leg."},"diagnostic_cost_bps":{"origin":"STANDING_POLICY_DEFAULT","evidence":"Current Strategy Lab diagnostic costs are 20 and 25 bps per executed leg."},"benchmark":{"origin":"STANDING_POLICY_DEFAULT","evidence":"Current Strategy Lab benchmark is identically_costed_buy_and_hold; the source uses Buy and Hold as its benchmark."},"criteria_version":{"origin":"STANDING_POLICY_DEFAULT","evidence":"Current Strategy Lab member criterion is excess_return_v2; the source metric/test difference is declared in research_context."},"cost_rationale":{"origin":"STANDING_POLICY_DEFAULT","evidence":"Use the standing Strategy Lab cost schedule because the source does not define it."}}}},{"id":"sma_24","member_criterion_version":"excess_return_v2","specification":{"rules":{"schema_version":"spec_v2","methodology_version":"research_v2","mechanism":"close_sma","lookback":24,"source":"binance_public_spot","symbol":"BTCUSDT","interval":"1d","exposure":"long_flat","start":"2020-06-01","end":"2026-09-01","warmup_days":24,"execution":"next_daily_open","accounting":"fractional_all_in_terminal_liquidation_v1","primary_cost_bps":15,"diagnostic_cost_bps":[20,25],"benchmark":"identically_costed_buy_and_hold","criteria_version":"excess_return_v2"},"source":{"description":"Published daily SMA24 trend-following member: the paper identifies the 24-time-unit simple moving average as a daily rule. It is retained as a published descriptive robustness member; it cannot rescue the paper-highlighted SMA12 primary result.","title":"Technical Analysis on the Bitcoin Market: Trading Opportunities or Investors’ Pitfall?","author":"Marina Resta; Paolo Pagnottoni; Maria Elena De Giuli","url":"https://doi.org/10.3390/risks8020044","date":"2020","excerpt":""},"cost_rationale":"Apply the current Strategy Lab standing per-side cost policy: 15 bps primary, with 20 and 25 bps diagnostics; the source does not define this Strategy Lab schedule.","date_selection_reason":"This is a pre-frozen post-publication out-of-sample interval: it begins on 2020-06-01, after the paper's 2020-05-06 publication and its data ending 2019-08-20, and ends exclusively on 2026-09-01, before declaration and without inspecting Strategy Lab outcomes.","prior_inspection":"known","provenance":{"schema_version":{"origin":"SUPPORTED_MECHANISM_DEFINITION","evidence":"Current Strategy Lab executable specification schema."},"methodology_version":{"origin":"SUPPORTED_MECHANISM_DEFINITION","evidence":"Current Strategy Lab deterministic research methodology."},"mechanism":{"origin":"USER_EXPLICIT","evidence":"The source defines a daily simple moving-average rule; this acceptance maps SMA24 to supported close_sma with material differences declared in research_context."},"lookback":{"origin":"USER_EXPLICIT","evidence":"Table 2 names SMA24 as a 24-time-unit simple moving average, used on daily data."},"source":{"origin":"STANDING_POLICY_DEFAULT","evidence":"Strategy Lab's current capture source is Binance Public Data Spot; the Kaggle source-data difference is declared in research_context."},"symbol":{"origin":"STANDING_POLICY_DEFAULT","evidence":"BTCUSDT is the current supported Strategy Lab Bitcoin market."},"interval":{"origin":"USER_EXPLICIT","evidence":"The selected source member is daily; this acceptance remains daily."},"exposure":{"origin":"STANDING_POLICY_DEFAULT","evidence":"Current Strategy Lab supports long_flat only; the source signed-signal difference is declared in research_context."},"start":{"origin":"USER_EXPLICIT","evidence":"2020-06-01 is the first chosen UTC day after the paper's May 2020 publication, frozen before evaluation."},"end":{"origin":"USER_EXPLICIT","evidence":"2026-09-01 is the exclusive end selected before evaluation for the later-sample validation."},"warmup_days":{"origin":"SUPPORTED_MECHANISM_DEFINITION","evidence":"close_sma requires warmup_days equal to lookback: 24."},"execution":{"origin":"STANDING_POLICY_DEFAULT","evidence":"Current Strategy Lab execution convention is next_daily_open; the source crossover/window/position differences are declared in research_context."},"accounting":{"origin":"STANDING_POLICY_DEFAULT","evidence":"Current Strategy Lab accounting is fractional_all_in_terminal_liquidation_v1; the source signed-return accounting difference is declared in research_context."},"primary_cost_bps":{"origin":"STANDING_POLICY_DEFAULT","evidence":"Current Strategy Lab primary cost is 15 bps per executed leg."},"diagnostic_cost_bps":{"origin":"STANDING_POLICY_DEFAULT","evidence":"Current Strategy Lab diagnostic costs are 20 and 25 bps per executed leg."},"benchmark":{"origin":"STANDING_POLICY_DEFAULT","evidence":"Current Strategy Lab benchmark is identically_costed_buy_and_hold; the source uses Buy and Hold as its benchmark."},"criteria_version":{"origin":"STANDING_POLICY_DEFAULT","evidence":"Current Strategy Lab member criterion is excess_return_v2; the source metric/test difference is declared in research_context."},"cost_rationale":{"origin":"STANDING_POLICY_DEFAULT","evidence":"Use the standing Strategy Lab cost schedule because the source does not define it."}}}}],"family_rule":{"type":"primary_plus_robustness","version":"family_rule_v1","k":0,"n":2,"primary_member_id":"sma_12"}}}
