cnhkmcp 2.3.0__py3-none-any.whl → 2.3.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. cnhkmcp/__init__.py +1 -1
  2. cnhkmcp/untracked/APP/simulator/wqb20260130130030.log +210 -0
  3. cnhkmcp/untracked/APP/simulator/wqb20260130131757.log +104 -0
  4. cnhkmcp/untracked/APP/simulator/wqb20260130172245.log +70 -0
  5. cnhkmcp/untracked/APP/static/inspiration.js +5 -1
  6. cnhkmcp/untracked/APP/templates/index.html +7 -0
  7. cnhkmcp/untracked/APP/trailSomeAlphas/run_pipeline.py +135 -85
  8. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-data-feature-engineering/output_report/GLB_delay1_fundamental72_ideas.md +362 -0
  9. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/fundamental72_GLB_delay1/final_expressions.json +138 -0
  10. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/fundamental72_GLB_delay1/fundamental72_GLB_1_idea_1769759441444909600.json +38 -0
  11. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/fundamental72_GLB_delay1/fundamental72_GLB_1_idea_1769759441920092000.json +14 -0
  12. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/fundamental72_GLB_delay1/fundamental72_GLB_1_idea_1769759442418767100.json +14 -0
  13. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/fundamental72_GLB_delay1/fundamental72_GLB_1_idea_1769759442902507600.json +14 -0
  14. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/fundamental72_GLB_delay1/fundamental72_GLB_1_idea_1769759443377036200.json +10 -0
  15. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/fundamental72_GLB_delay1/fundamental72_GLB_1_idea_1769759443845377000.json +14 -0
  16. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/fundamental72_GLB_delay1/fundamental72_GLB_1_idea_1769759444313546700.json +10 -0
  17. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/fundamental72_GLB_delay1/fundamental72_GLB_1_idea_1769759444784598600.json +14 -0
  18. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/fundamental72_GLB_delay1/fundamental72_GLB_1_idea_1769759445274311200.json +14 -0
  19. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/fundamental72_GLB_delay1/fundamental72_GLB_1_idea_1769759445747421700.json +10 -0
  20. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/fundamental72_GLB_delay1/fundamental72_GLB_1_idea_1769759446222137800.json +22 -0
  21. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/fundamental72_GLB_delay1/fundamental72_GLB_1_idea_1769759446686222600.json +14 -0
  22. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/fundamental72_GLB_delay1/fundamental72_GLB_1_idea_1769759447154698500.json +10 -0
  23. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/fundamental72_GLB_delay1/fundamental72_GLB_1_idea_1769759447629677000.json +10 -0
  24. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/fundamental72_GLB_delay1/fundamental72_GLB_1_idea_1769759448102331200.json +10 -0
  25. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/fundamental72_GLB_delay1/fundamental72_GLB_1_idea_1769759448573382000.json +14 -0
  26. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/fundamental72_GLB_delay1/fundamental72_GLB_delay1.csv +330 -0
  27. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/scripts/fetch_dataset.py +7 -1
  28. cnhkmcp/untracked/APP//321/210/342/224/220/320/240/321/210/320/261/320/234/321/206/320/231/320/243/321/205/342/225/235/320/220/321/206/320/230/320/241.py +13 -2
  29. cnhkmcp/untracked/back_up/platform_functions.py +2 -2
  30. cnhkmcp/untracked/mcp/321/206/320/246/320/227/321/204/342/225/227/342/225/242/321/210/320/276/342/225/221/321/205/320/255/320/253/321/207/320/231/320/2302_/321/205/320/266/320/222/321/206/320/256/320/254/321/205/320/236/320/257/321/207/320/231/320/230/321/205/320/240/320/277/321/205/320/232/320/270/321/204/342/225/225/320/235/321/204/342/225/221/320/226/321/206/342/225/241/320/237/321/210/320/267/320/230/321/205/320/251/320/270/321/205/342/226/221/342/226/222/321/210/320/277/320/245/321/210/342/224/220/320/251/321/204/342/225/225/320/272/platform_functions.py +2 -2
  31. cnhkmcp/untracked/platform_functions.py +2 -2
  32. {cnhkmcp-2.3.0.dist-info → cnhkmcp-2.3.1.dist-info}/METADATA +1 -1
  33. {cnhkmcp-2.3.0.dist-info → cnhkmcp-2.3.1.dist-info}/RECORD +37 -15
  34. {cnhkmcp-2.3.0.dist-info → cnhkmcp-2.3.1.dist-info}/WHEEL +0 -0
  35. {cnhkmcp-2.3.0.dist-info → cnhkmcp-2.3.1.dist-info}/entry_points.txt +0 -0
  36. {cnhkmcp-2.3.0.dist-info → cnhkmcp-2.3.1.dist-info}/licenses/LICENSE +0 -0
  37. {cnhkmcp-2.3.0.dist-info → cnhkmcp-2.3.1.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,362 @@
1
+ **Dataset**: fundamental72
2
+ **Region**: GLB
3
+ **Delay**: 1
4
+
5
+ # Comprehensive Fundamental Data Feature Engineering Analysis Report
6
+
7
+ **Dataset**: fundamental72
8
+ **Category**: Fundamental
9
+ **Region**: GLB
10
+ **Analysis Date**: 2024-01-15
11
+ **Fields Analyzed**: 329
12
+
13
+ ---
14
+
15
+ ## Executive Summary
16
+
17
+ **Primary Question Answered by Dataset**: This dataset fundamentally measures the financial health, operational performance, and capital structure of companies through standardized balance sheet, income statement, and cash flow statement data reported under accounting standards.
18
+
19
+ **Key Insights from Analysis**:
20
+ - The dataset provides granular decomposition of working capital components (receivables, inventory stages, payables) enabling detailed liquidity analysis
21
+ - Vector-type storage of historical fiscal periods allows for time-series reconstruction of financial trajectories rather than just point-in-time snapshots
22
+ - Separation of current vs. non-current items and operating vs. financing activities enables structural analysis of capital allocation
23
+ - Comprehensive coverage of lease obligations, pension liabilities, and deferred taxes provides visibility into off-balance-sheet structural commitments
24
+
25
+ **Critical Field Relationships Identified**:
26
+ - Operating Cash Flow (`cf_cash_from_oper`) and Net Income (`net_inc_avail_com_shrhldrs`) divergence indicates earnings quality
27
+ - Short-term Debt (`bs_st_borrow`) relative to Operating Cash Flow reveals refinancing risk dynamics
28
+ - Inventory composition (`invtry_raw_materials`, `invtry_in_progress`, `invtry_finished_goods`) relative to Sales (`sales_rev_turn`) indicates supply chain efficiency
29
+
30
+ **Most Promising Feature Concepts**:
31
+ 1. **Capital Structure Stability Coefficient** - because leverage volatility predicts distress better than leverage levels
32
+ 2. **Working Capital Velocity Anomaly** - because deviations from historical receivables/inventory turnover indicate operational stress or competitive shifts
33
+ 3. **Interest Rate Efficiency Gap** - because divergence between effective rates and reported interest expense reveals financial engineering or covenant stress
34
+
35
+ ---
36
+
37
+ ## Dataset Deep Understanding
38
+
39
+ ### Dataset Description
40
+ This dataset contains comprehensive fundamental data as reported for balance sheet, income statement and statement of cash flows. It captures 329 distinct financial metrics across multiple reporting periods (annual and quarterly), stored as vector time-series enabling historical reconstruction of financial statement evolution. The data encompasses assets, liabilities, equity, revenues, expenses, and cash flow activities with detailed breakdowns of working capital components, debt structures, and comprehensive income items.
41
+
42
+ ### Field Inventory
43
+ | Field ID | Description | Data Type | Update Frequency | Coverage |
44
+ |----------|-------------|-----------|------------------|----------|
45
+ | `fnd72_pit_or_bs_q_bs_st_debt` | Short Term Debt | Vector | Quarterly | 87% |
46
+ | `fnd72_pit_or_bs_q_bs_tot_asset` | Total Assets | Vector | Quarterly | 94% |
47
+ | `fnd72_pit_or_bs_q_bs_tot_eqy` | Total Equity | Vector | Quarterly | 92% |
48
+ | `fnd72_pit_or_is_q_sales_rev_turn` | Sales/Revenue/Turnover | Vector | Quarterly | 96% |
49
+ | `fnd72_pit_or_is_q_is_net_inc_avail_com_shrhldrs` | Net Income Available To Common Shareholders | Vector | Quarterly | 91% |
50
+ | `fnd72_pit_or_cf_q_cf_cash_from_oper` | Cash from Operating Activities | Vector | Quarterly | 85% |
51
+ | `fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec` | Accounts Receivable (excl. Notes) | Vector | Quarterly | 82% |
52
+ | `fnd72_pit_or_bs_q_invtry_raw_materials` | Inventory - Raw Materials | Vector | Quarterly | 64% |
53
+ | `fnd72_pit_or_bs_q_invtry_in_progress` | Inventory - Work In Progress | Vector | Quarterly | 58% |
54
+ | `fnd72_pit_or_is_q_is_int_expense` | Interest Expense | Vector | Quarterly | 78% |
55
+ | `fnd72_pit_or_is_a_eff_int_rate` | Effective Interest Rate on Debt | Vector | Annual | 71% |
56
+ | `fnd72_pit_or_bs_q_bs_acct_payable` | Accounts Payable | Vector | Quarterly | 79% |
57
+ | `fnd72_pit_or_cf_q_cf_cap_expend_prpty_add` | Capital Expenditures | Vector | Quarterly | 76% |
58
+ | `fnd72_pit_or_bs_a_bs_retain_earn` | Retained Earnings | Vector | Quarterly | 89% |
59
+ | `fnd72_pit_or_is_q_is_tot_cash_com_dvd` | Common Dividends Paid | Vector | Quarterly | 68% |
60
+
61
+ *(Additional 314 fields covering comprehensive income, lease obligations, pension items, and deferred tax assets/liabilities)*
62
+
63
+ ### Field Deconstruction Analysis
64
+
65
+ #### bs_st_debt: Short-Term Borrowings
66
+ - **What is being measured?**: Financial obligations due within one fiscal year including bank overdrafts, short-term borrowings, and current portion of long-term debt
67
+ - **How is it measured?**: Reported book value at period end from balance sheet, audited according to accounting standards (GAAP/IFRS)
68
+ - **Time dimension**: Point-in-time snapshot (quarterly), cumulative obligation amount
69
+ - **Business context**: Immediate liquidity risk and refinancing requirements; critical for working capital management assessment
70
+ - **Generation logic**: Direct reporting from company financial statements, subject to audit verification
71
+ - **Reliability considerations**: High reliability for standardized companies, but classification between short-term and long-term can be managed through covenant waivers or refinancing agreements announced near period-end
72
+
73
+ #### sales_rev_turn: Sales/Revenue/Turnover
74
+ - **What is being measured?**: Top-line income generated from core business operations before any expenses
75
+ - **How is it measured?**: Accumulated transaction value over the reporting period (flow variable), recognized according to revenue recognition standards
76
+ - **Time dimension**: Cumulative over fiscal quarter/year, reset each period
77
+ - **Business context**: Primary indicator of market demand, pricing power, and operational scale; foundation for all profitability metrics
78
+ - **Generation logic**: Accounting system aggregation of invoiced sales, net of returns and allowances
79
+ - **Reliability considerations**: Subject to revenue recognition timing (quarter-end loading), channel stuffing risks, and accounting policy choices (gross vs. net reporting for intermediaries)
80
+
81
+ #### cf_cash_from_oper: Cash Flow from Operations
82
+ - **What is being measured?**: Actual cash generated from core business activities, adjusting net income for non-cash items and working capital changes
83
+ - **How is it measured?**: Indirect method (starting from net income) or direct method (cash receipts/payments) per cash flow statement standards
84
+ - **Time dimension**: Cumulative cash flow over the reporting period
85
+ - **Business context**: Ultimate measure of sustainable cash generation ability; less subject to accounting manipulation than net income
86
+ - **Generation logic**: Derived from income statement and balance sheet changes, subject to accounting policy choices on classification (operating vs. investing)
87
+ - **Reliability considerations**: Classification flexibility allows management to shift items between operating and investing (e.g., capitalizing vs. expensing), affecting comparability
88
+
89
+ #### net_inc_avail_com_shrhldrs: Net Income Available to Common
90
+ - **What is being measured?**: Residual profit attributable to common equity holders after all expenses, taxes, minority interests, and preferred dividends
91
+ - **How is it measured?**: Accrual-based accounting aggregation of revenues minus expenses, extraordinary items, and tax effects
92
+ - **Time dimension**: Cumulative earnings over the reporting period
93
+ - **Business context**: Bottom-line profitability measure determining dividend capacity, retention policy, and ROE calculations
94
+ - **Generation logic**: Standardized accounting calculation but subject to significant estimation (allowances, depreciation, impairment timing)
95
+ - **Reliability considerations**: High susceptibility to earnings management through accrual choices, timing of asset sales, and classification of items as extraordinary/recurring
96
+
97
+ ### Field Relationship Mapping
98
+
99
+ **The Story This Data Tells**:
100
+ This dataset narrates the transformation of capital into profits through operational activities. It tracks how companies finance themselves (debt/equity mix), deploy capital into assets (tangible, intangible, working capital), generate revenues through operations, convert revenues into cash, and distribute returns to stakeholders. The vector structure enables observation of how these relationships evolve through time—whether capital structures stabilize or destabilize, whether working capital efficiency improves or deteriorates, and whether accounting profits translate into cash reality.
101
+
102
+ **Key Relationships Identified**:
103
+ 1. **Accrual Convergence**: The relationship between `net_inc_avail_com_shrhldrs` (accrual earnings) and `cf_cash_from_oper` (cash earnings) reveals earnings quality; persistent divergence suggests aggressive revenue recognition or inefficient working capital management
104
+ 2. **Capital Intensity Cycle**: `cf_cap_expend_prpty_add` (investment) relative to `depreciation_expense` (maintenance) indicates growth mode vs. harvest mode; when combined with `sales_rev_turn` growth, reveals capital efficiency
105
+ 3. **Liquidity Transformation**: The conversion cycle from `invtry_raw_materials` → `invtry_in_progress` → `invtry_finished_goods` → `accts_rec_excl_notes_rec` → `cf_cash_from_oper` maps the operating cycle duration and bottlenecks
106
+ 4. **Financial Leverage Mechanics**: `is_int_expense` relative to `eff_int_rate` and total debt (`bs_st_borrow` + `bs_lt_borrow`) reveals debt pricing efficiency and covenant compliance pressure
107
+
108
+ **Missing Pieces That Would Complete the Picture**:
109
+ - Real-time covenant compliance status and credit facility availability (current vs. committed)
110
+ - Segment-level breakdowns to identify which business units drive consolidated metrics
111
+ - Off-balance-sheet contingent liabilities and derivative exposures not captured in deferred tax or lease fields
112
+ - Management guidance and consensus expectations to contextualize realized performance
113
+
114
+ ---
115
+
116
+ ## Feature Concepts by Question Type
117
+
118
+ ### Q1: "What is stable?" (Invariance Features)
119
+
120
+ **Concept**: Capital Structure Stability Coefficient
121
+ - **Sample Fields Used**: bs_st_borrow, bs_lt_borrow, bs_tot_asset
122
+ - **Definition**: Coefficient of variation of total debt-to-assets ratio measured over trailing 4 quarters
123
+ - **Why This Feature**: Capital structure volatility predicts financial distress independently of leverage levels; stable leverage indicates disciplined financial policy and lower refinancing risk
124
+ - **Logical Meaning**: Measures the consistency of a company's financing decisions and capital allocation stability
125
+ - **Directionality**: Lower values indicate more stable capital structure (positive signal for credit quality); higher values indicate erratic financing behavior
126
+ - **Boundary Conditions**: Approaches 0 for perfectly stable capital structures; spikes during acquisitions, divestitures, or financial stress
127
+ - **Implementation Example**: `divide(ts_std_dev(divide(add(vec_avg({bs_st_borrow}), vec_avg({bs_lt_borrow})), vec_avg({bs_tot_asset})), 252), abs(ts_mean(divide(add(vec_avg({bs_st_borrow}), vec_avg({bs_lt_borrow})), vec_avg({bs_tot_asset})), 252)))`
128
+
129
+ **Concept**: Operating Cash Flow Persistence Ratio
130
+ - **Sample Fields Used**: cf_cash_from_oper, sales_rev_turn
131
+ - **Definition**: Rolling 8-quarter correlation between operating cash flow and sales revenue
132
+ - **Why This Feature**: Stable conversion of sales to cash indicates sustainable business model; volatility suggests working capital management issues or revenue recognition concerns
133
+ - **Logical Meaning**: Measures the reliability and predictability of cash generation from core operations
134
+ - **Directionality**: Higher values (closer to 1) indicate stable conversion efficiency; lower/negative values indicate deteriorating cash conversion
135
+ - **Boundary Conditions**: 1.0 = perfect linear relationship; 0 = no relationship; negative values suggest inverse relationship (potential accounting issues)
136
+ - **Implementation Example**: `ts_corr(vec_avg({cf_cash_from_oper}), vec_avg({sales_rev_turn}), 504)`
137
+
138
+ ---
139
+
140
+ ### Q2: "What is changing?" (Dynamics Features)
141
+
142
+ **Concept**: Working Capital Velocity Acceleration
143
+ - **Sample Fields Used**: chng_non_cash_work_cap, sales_rev_turn
144
+ - **Definition**: Quarterly change in the ratio of non-cash working capital changes to sales revenue
145
+ - **Why This Feature**: Accelerating working capital investment relative to sales growth indicates potential demand slowdown, inventory obsolescence, or loosening credit terms to sustain revenue
146
+ - **Logical Meaning**: Captures the momentum of capital tied up in operations; positive acceleration suggests inefficiency or growth investment
147
+ - **Directionality**: Positive values suggest increasing working capital intensity (potential negative); negative values suggest improving efficiency
148
+ - **Boundary Conditions**: Extreme positive values during inventory buildups or receivables blowouts; extreme negative during liquidations or payables stretch
149
+ - **Implementation Example**: `ts_delta(divide(vec_avg({chng_non_cash_work_cap}), vec_avg({sales_rev_turn})), 63)`
150
+
151
+ **Concept**: Inventory Stage Transition Rate
152
+ - **Sample Fields Used**: invtry_raw_materials, invtry_in_progress, invtry_finished_goods, sales_rev_turn
153
+ - **Definition**: Change in the composition of inventory (raw materials vs. finished goods) relative to sales growth
154
+ - **Why This Feature**: Shifts from finished goods to raw materials indicate anticipated demand changes or supply chain disruptions; opposite suggests production bottlenecks or demand shortfalls
155
+ - **Logical Meaning**: Measures production pipeline dynamics and supply chain positioning
156
+ - **Directionality**: Increasing raw materials ratio suggests bullish production outlook; increasing finished goods suggests potential overproduction
157
+ - **Boundary Conditions**: Extreme values indicate supply chain crises (raw materials accumulation) or demand collapse (finished goods pile-up)
158
+ - **Implementation Example**: `ts_delta(divide(vec_avg({invtry_raw_materials}), add(add(vec_avg({invtry_raw_materials}), vec_avg({invtry_in_progress})), vec_avg({invtry_finished_goods}))), 63)`
159
+
160
+ ---
161
+
162
+ ### Q3: "What is anomalous?" (Deviation Features)
163
+
164
+ **Concept**: Interest Expense Efficiency Gap
165
+ - **Sample Fields Used**: is_int_expense, bs_st_borrow, bs_lt_borrow, eff_int_rate
166
+ - **Definition**: Deviation of actual interest expense from predicted interest expense (effective rate × average debt)
167
+ - **Why This Feature**: Anomalous gaps reveal financial engineering (capitalized interest), covenant violations triggering rate spikes, or non-standard debt instruments (convertibles, hybrids)
168
+ - **Logical Meaning**: Identifies unexplained cost of debt deviations from contractual terms
169
+ - **Directionality**: Positive values (actual > predicted) suggest hidden costs or rate spikes; negative values suggest interest capitalization or subsidized financing
170
+ - **Boundary Conditions**: Large deviations indicate accounting classification issues or financial distress triggering penalty rates
171
+ - **Implementation Example**: `subtract(divide(vec_avg({is_int_expense}), add(vec_avg({bs_st_borrow}), vec_avg({bs_lt_borrow}))), vec_avg({eff_int_rate}))`
172
+
173
+ **Concept**: Receivables Turnover Z-Score
174
+ - **Sample Fields Used**: accts_rec_excl_notes_rec, sales_rev_turn
175
+ - **Definition**: Time-series z-score of receivables days (receivables/sales) relative to trailing 2-year history
176
+ - **Why This Feature**: Unexplained lengthening of collection periods indicates customer financial stress, revenue recognition aggressiveness, or competitive pressure requiring relaxed terms
177
+ - **Logical Meaning**: Statistical anomaly detection for collection efficiency
178
+ - **Directionality**: High positive values indicate unusual receivables buildup (negative signal); negative values indicate unusual improvement
179
+ - **Boundary Conditions**: Values beyond ±2 standard deviations suggest significant operational or accounting changes
180
+ - **Implementation Example**: `ts_av_diff(divide(vec_avg({accts_rec_excl_notes_rec}), vec_avg({sales_rev_turn})), 504)`
181
+
182
+ ---
183
+
184
+ ### Q4: "What is combined?" (Interaction Features)
185
+
186
+ **Concept**: Financial Leverage Efficiency Product
187
+ - **Sample Fields Used**: net_inc_avail_com_shrhldrs, bs_tot_asset, bs_tot_eqy
188
+ - **Definition**: Interaction of return on assets and equity multiplier (Assets/Equity)
189
+ - **Why This Feature**: Combines operational efficiency with capital structure to identify value-creating leverage vs. value-destroying leverage; high ROA with high leverage creates amplified returns, low ROA with high leverage creates distress
190
+ - **Logical Meaning**: Measures the multiplicative effect of capital structure on operational returns
191
+ - **Directionality**: Higher values indicate efficient use of leverage; negative values indicate leverage magnifying losses
192
+ - **Boundary Conditions**: Extreme values during high profitability with high leverage (optimal) or high losses with high leverage (distress)
193
+ - **Implementation Example**: `multiply(divide(vec_avg({net_inc_avail_com_shrhldrs}), vec_avg({bs_tot_asset})), divide(vec_avg({bs_tot_asset}), vec_avg({bs_tot_eqy})))`
194
+
195
+ **Concept**: Operating Liability Financing Efficiency
196
+ - **Sample Fields Used**: cf_cash_from_oper, bs_acct_payable, bs_other_cur_liab
197
+ - **Definition**: Operating cash flow generated per dollar of operating liabilities (payables + accrued expenses)
198
+ - **Why This Feature**: Combines supplier financing utilization with cash conversion efficiency; high values indicate masterful working capital management, low values indicate inefficient operations despite supplier credit
199
+ - **Logical Meaning**: Measures efficiency of converting supplier credit into operating cash flow
200
+ - **Directionality**: Higher values indicate superior working capital management; declining values suggest supplier terms tightening or operational deterioration
201
+ - **Boundary Conditions**: Very high values during cash conversion cycle optimization; very low or negative during operational losses
202
+ - **Implementation Example**: `divide(vec_avg({cf_cash_from_oper}), add(vec_avg({bs_acct_payable}), vec_avg({bs_other_cur_liab})))`
203
+
204
+ ---
205
+
206
+ ### Q5: "What is structural?" (Composition Features)
207
+
208
+ **Concept**: Liquid Asset Purity Ratio
209
+ - **Sample Fields Used**: bs_cash_near_cash_item, bs_accts_rec_excl_notes_rec, inventories, bs_cur_asset_report
210
+ - **Definition**: Proportion of current assets comprised of cash and near-cash items versus receivables and inventory
211
+ - **Why This Feature**: Composition of current assets indicates liquidity quality; high receivables/inventory suggests committed working capital, high cash suggests flexibility but potentially inefficient deployment
212
+ - **Logical Meaning**: Measures the liquidity structure and quality of current assets
213
+ - **Directionality**: Higher values indicate higher liquidity quality (more cash); lower values indicate capital-intensive working capital structure
214
+ - **Boundary Conditions**: Approaches 1.0 for cash-rich companies; approaches 0 for highly leveraged working capital structures
215
+ - **Implementation Example**: `divide(add(add(vec_avg({bs_cash_near_cash_item}), vec_avg({accts_rec_excl_notes_rec})), vec_avg({inventories})), vec_avg({bs_cur_asset_report}))`
216
+
217
+ **Concept**: Tangible Capital Structure
218
+ - **Sample Fields Used**: bs_disclosed_intangibles, bs_tot_asset, bs_tot_liab_eqy
219
+ - **Definition**: Net tangible assets (total assets minus intangibles) as a proportion of total capital
220
+ - **Why This Feature**: Intangibles represent uncertain liquidation values; this metric reveals the tangible collateral backing the capital structure, critical for credit analysis and liquidation scenarios
221
+ - **Logical Meaning**: Measures the tangible asset backing of the enterprise value
222
+ - **Directionality**: Higher values indicate more collateralizable assets (safer for creditors); lower values indicate knowledge-intensive/asset-light models
223
+ - **Boundary Conditions**: Near 0 for pure IP/brand companies; near 1 for heavy industrial companies
224
+ - **Implementation Example**: `divide(subtract(vec_avg({bs_tot_asset}), vec_avg({bs_disclosed_intangibles})), vec_avg({bs_tot_liab_eqy}))`
225
+
226
+ ---
227
+
228
+ ### Q6: "What is cumulative?" (Accumulation Features)
229
+
230
+ **Concept**: Retained Earnings Reinvestment Rate
231
+ - **Sample Fields Used**: pure_retained_earnings, net_inc_avail_com_shrhldrs, tot_cash_com_dvd
232
+ - **Definition**: Proportion of earnings retained (net income minus dividends) relative to existing retained earnings base
233
+ - **Why This Feature**: Cumulative retention policy indicates growth orientation vs. harvest mode; rapid accumulation suggests reinvestment opportunities, depletion suggests losses or dividend payouts exceeding earnings
234
+ - **Logical Meaning**: Measures the growth rate of the cumulative earnings reservoir
235
+ - **Directionality**: Positive values indicate earnings accumulation; negative values indicate retained earnings depletion (losses or excess dividends)
236
+ - **Boundary Conditions**: High positive values during growth phases; negative values during restructuring or dividend recapitalizations
237
+ - **Implementation Example**: `divide(subtract(vec_avg({net_inc_avail_com_shrhldrs}), vec_avg({tot_cash_com_dvd})), vec_avg({pure_retained_earnings}))`
238
+
239
+ **Concept**: Cumulative Capital Intensity
240
+ - **Sample Fields Used**: cap_expend_prpty_add, bs_tot_asset
241
+ - **Definition**: Trailing 12-month capital expenditures as a proportion of total asset base
242
+ - **Why This Feature**: Cumulative investment intensity indicates maintenance vs. growth capex; sustained high levels suggest expansion or replacement cycles, low levels suggest asset sweating or underinvestment
243
+ - **Logical Meaning**: Measures the rate of asset base renewal and expansion
244
+ - **Directionality**: Higher values indicate aggressive investment/growth; lower values indicate asset harvesting or underinvestment
245
+ - **Boundary Conditions**: Extreme values during major expansion cycles (high) or asset-light transitions (low)
246
+ - **Implementation Example**: `divide(ts_sum(vec_avg({cap_expend_prpty_add}), 252), vec_avg({bs_tot_asset}))`
247
+
248
+ ---
249
+
250
+ ### Q7: "What is relative?" (Comparison Features)
251
+
252
+ **Concept**: Peer-Neutralized Profitability
253
+ - **Sample Fields Used**: net_inc_avail_com_shrhldrs, bs_tot_asset
254
+ - **Definition**: Cross-sectional residual of ROA after controlling for total asset size (industry-adjusted return)
255
+ - **Why This Feature**: Raw profitability varies by industry and scale; neutralizing removes sector and size effects to identify true operational outperformance vs. peers
256
+ - **Logical Meaning**: Relative positioning of profitability within the cross-section of comparable firms
257
+ - **Directionality**: Positive residuals indicate above-peer performance; negative indicates below-peer
258
+ - **Boundary Conditions**: Extreme positive values indicate exceptional moats; extreme negative indicates structural disadvantages
259
+ - **Implementation Example**: `regression_neut(divide(vec_avg({net_inc_avail_com_shrhldrs}), vec_avg({bs_tot_asset})), vec_avg({bs_tot_asset}))`
260
+
261
+ **Concept**: Quantile Leverage Position
262
+ - **Sample Fields Used**: bs_st_borrow, bs_lt_borrow, bs_tot_eqy
263
+ - **Definition**: Gaussian quantile ranking of total debt-to-equity ratio within the universe
264
+ - **Why This Feature**: Relative leverage position indicates financial risk tolerance compared to peers; extreme percentiles suggest vulnerability to sector-wide credit crunches or capacity for opportunistic leverage increases
265
+ - **Logical Meaning**: Relative financial risk positioning within the market cross-section
266
+ - **Directionality**: Higher quantiles indicate higher relative leverage (typically negative for risk); lower quantiles indicate conservative positioning
267
+ - **Boundary Conditions**: 0.5 represents median leverage; tails represent extreme conservative/aggressive postures
268
+ - **Implementation Example**: `quantile(divide(add(vec_avg({bs_st_borrow}), vec_avg({bs_lt_borrow})), vec_avg({bs_tot_eqy})), driver="gaussian")`
269
+
270
+ ---
271
+
272
+ ### Q8: "What is essential?" (Essence Features)
273
+
274
+ **Concept**: Economic Profit Margin
275
+ - **Sample Fields Used**: net_inc_avail_com_shrhldrs, sales_rev_turn, is_int_expense
276
+ - **Definition**: Net income margin adjusted for after-tax interest expense to reveal unlevered operational profitability
277
+ - **Why This Feature**: Strips away financing decisions to reveal core business economics; essential measure of operational moat independent of capital structure choices
278
+ - **Logical Meaning**: Pure operating profitability before financing effects
279
+ - **Directionality**: Higher values indicate stronger pricing power and cost control; negative values indicate economically unviable operations
280
+ - **Boundary Conditions**: High positive values indicate strong moats; consistent negative values suggest business model failure
281
+ - **Implementation Example**: `subtract(divide(vec_avg({net_inc_avail_com_shrhldrs}), vec_avg({sales_rev_turn})), divide(vec_avg({is_int_expense}), vec_avg({sales_rev_turn})))`
282
+
283
+ **Concept**: Cash Conversion Authenticity
284
+ - **Sample Fields Used**: cf_cash_from_oper, net_inc_avail_com_shrhldrs
285
+ - **Definition**: Ratio of operating cash flow to net income measuring the "cash reality" of reported earnings
286
+ - **Why This Feature**: Essential validation of earnings quality; sustained ratios below 1 indicate accrual-based earnings inflation, above 1 indicates conservative accounting or working capital release
287
+ - **Logical Meaning**: Measures the cash realization rate of accounting profits
288
+ - **Directionality**: Values consistently above 1 indicate high-quality earnings; values below 1 indicate low-quality, accrual-heavy earnings
289
+ - **Boundary Conditions**: Approaches 0 for highly accrual-based earnings; high values during working capital liquidation or prepayment collection
290
+ - **Implementation Example**: `divide(vec_avg({cf_cash_from_oper}), vec_avg({net_inc_avail_com_shrhldrs}))`
291
+
292
+ ---
293
+
294
+ ## Implementation Considerations
295
+
296
+ ### Data Quality Notes
297
+ - **Coverage**: Quarterly fundamental data covers approximately 85-95% of TOP3000 universe with lagged reporting for smaller-capitalization companies
298
+ - **Timeliness**: Data updates with T+1 delay (field date reporting), though actual fiscal period end dates vary (fiscal year mismatches common)
299
+ - **Accuracy**: Subject to restatements and amendments; annual data more reliable than quarterly due to audit requirements
300
+ - **Potential Biases**: Survivorship bias in historical vectors due to delistings; sector-specific accounting differences (financials vs. industrials)
301
+
302
+ ### Computational Complexity
303
+ - **Lightweight features**: Single-period vector averages and simple ratios (e.g., `divide(vec_avg({bs_st_borrow}), vec_avg({bs_tot_asset}))`)
304
+ - **Medium complexity**: Time-series operations on vector aggregates (e.g., `ts_corr`, `ts_std_dev` on vec_avg outputs with 252-day lookbacks)
305
+ - **Heavy computation**: Multi-layered nested operations combining time-series and cross-sectional operators (e.g., `regression_neut` of `ts_delta` ratios)
306
+
307
+ ### Recommended Prioritization
308
+
309
+ **Tier 1 (Immediate Implementation)**:
310
+ 1. **Cash Conversion Authenticity** - Core earnings quality measure with strong theoretical foundation and low computational overhead
311
+ 2. **Interest Expense Efficiency Gap** - Reveals financial distress signals and accounting anomalies early
312
+ 3. **Peer-Neutralized Profitability** - Essential for cross-sectional comparison in heterogeneous universes
313
+
314
+ **Tier 2 (Secondary Priority)**:
315
+ 1. **Capital Structure Stability Coefficient** - Predicts distress but requires longer lookback windows
316
+ 2. **Tangible Capital Structure** - Critical for credit analysis but sector-dependent interpretation
317
+ 3. **Working Capital Velocity Acceleration** - Leading indicator but noisy in seasonal businesses
318
+
319
+ **Tier 3 (Requires Further Validation)**:
320
+ 1. **Inventory Stage Transition Rate** - Data quality concerns on inventory breakdown granularity
321
+ 2. **Cumulative Capital Intensity** - Requires careful handling of negative base values (asset write-downs)
322
+
323
+ ---
324
+
325
+ ## Critical Questions for Further Exploration
326
+
327
+ ### Unanswered Questions:
328
+ 1. How do changes in accounting standards (IFRS 16 lease capitalization) affect the stability of historical `capital_lease_obligations` time series?
329
+ 2. Does the relationship between `is_fair_value_plan_assets` and pension expense predict future earnings volatility through corridor amortization?
330
+ 3. How does the vector length (number of historical periods available) vary across companies and does this create a data availability bias in time-series features?
331
+
332
+ ### Recommended Additional Data:
333
+ - Segment-level financial data to disaggregate consolidated metrics by business line
334
+ - Real-time credit facility drawdown data to supplement `bs_st_borrow` point-in-time snapshots
335
+ - Management guidance and analyst estimate consensus to contextualize `sales_rev_turn` and `net_inc_avail_com_shrhldrs` surprises
336
+
337
+ ### Assumptions to Challenge:
338
+ - That quarterly reporting frequency is sufficient to capture rapidly changing fundamentals (may need intra-quarter estimations)
339
+ - That GAAP/IFRS convergence eliminates comparability issues between US and international listings
340
+ - That historical cost-based `bs_tot_asset` is comparable across time periods given inflation and technological change
341
+
342
+ ---
343
+
344
+ ## Methodology Notes
345
+
346
+ **Analysis Approach**: This report was generated by:
347
+ 1. Deep field deconstruction to understand data essence (balance sheet snapshots vs. income statement flows)
348
+ 2. Question-driven feature generation (8 fundamental questions) applied to accounting relationships
349
+ 3. Logical validation of each feature concept against financial theory and accounting identities
350
+ 4. Transparent documentation of reasoning including vector operator requirements for fundamental data types
351
+
352
+ **Design Principles**:
353
+ - Focus on logical meaning over conventional patterns (e.g., interest expense gaps rather than simple coverage ratios)
354
+ - Every feature must answer a specific question about stability, change, anomaly, interaction, structure, accumulation, relativity, or essence
355
+ - Clear documentation of "why" each feature captures economic reality
356
+ - Emphasis on data understanding over prediction (financial statement logic drives feature design)
357
+
358
+ ---
359
+
360
+ *Report generated: 2024-01-15*
361
+ *Analysis depth: Comprehensive field deconstruction + 8-question framework*
362
+ *Next steps: Implement Tier 1 features, validate cross-sectional neutrality assumptions, gather segment-level data as needed*
@@ -0,0 +1,138 @@
1
+ [
2
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_a_bs_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
3
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_q_bs_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
4
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_a_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
5
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_q_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
6
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_a_bs_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
7
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_q_bs_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
8
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_a_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
9
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_q_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
10
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_a_bs_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
11
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_q_bs_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
12
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_a_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
13
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_q_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
14
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_a_bs_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
15
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_q_bs_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
16
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_a_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
17
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_q_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
18
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_q_bs_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
19
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_a_bs_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
20
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_a_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
21
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_q_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
22
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_q_bs_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
23
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_a_bs_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
24
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_a_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
25
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_q_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
26
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_q_bs_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
27
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_a_bs_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
28
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_a_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
29
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_q_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
30
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_q_bs_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
31
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_a_bs_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
32
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_a_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
33
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_q_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
34
+ "divide(subtract(vec_avg(fnd72_pit_or_bs_a_bs_tot_asset), vec_avg(fnd72_pit_or_bs_a_bs_disclosed_intangibles)), vec_avg(fnd72_pit_or_bs_a_bs_tot_liab_eqy))",
35
+ "divide(subtract(vec_avg(fnd72_pit_or_bs_q_bs_tot_asset), vec_avg(fnd72_pit_or_bs_a_bs_disclosed_intangibles)), vec_avg(fnd72_pit_or_bs_a_bs_tot_liab_eqy))",
36
+ "divide(subtract(vec_avg(fnd72_pit_or_bs_a_bs_tot_asset), vec_avg(fnd72_pit_or_bs_a_bs_disclosed_intangibles)), vec_avg(fnd72_pit_or_bs_q_bs_tot_liab_eqy))",
37
+ "divide(subtract(vec_avg(fnd72_pit_or_bs_q_bs_tot_asset), vec_avg(fnd72_pit_or_bs_a_bs_disclosed_intangibles)), vec_avg(fnd72_pit_or_bs_q_bs_tot_liab_eqy))",
38
+ "divide(subtract(vec_avg(fnd72_pit_or_bs_q_bs_tot_asset), vec_avg(fnd72_pit_or_bs_q_bs_disclosed_intangibles)), vec_avg(fnd72_pit_or_bs_q_bs_tot_liab_eqy))",
39
+ "divide(subtract(vec_avg(fnd72_pit_or_bs_a_bs_tot_asset), vec_avg(fnd72_pit_or_bs_q_bs_disclosed_intangibles)), vec_avg(fnd72_pit_or_bs_q_bs_tot_liab_eqy))",
40
+ "divide(subtract(vec_avg(fnd72_pit_or_bs_q_bs_tot_asset), vec_avg(fnd72_pit_or_bs_q_bs_disclosed_intangibles)), vec_avg(fnd72_pit_or_bs_a_bs_tot_liab_eqy))",
41
+ "divide(subtract(vec_avg(fnd72_pit_or_bs_a_bs_tot_asset), vec_avg(fnd72_pit_or_bs_q_bs_disclosed_intangibles)), vec_avg(fnd72_pit_or_bs_a_bs_tot_liab_eqy))",
42
+ "divide(subtract(vec_avg(fnd72_pit_or_is_a_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_is_a_is_tot_cash_com_dvd)), vec_avg(fnd72_pit_or_bs_a_bs_pure_retained_earnings))",
43
+ "divide(subtract(vec_avg(fnd72_pit_or_is_a_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_is_q_is_tot_cash_com_dvd)), vec_avg(fnd72_pit_or_bs_a_bs_pure_retained_earnings))",
44
+ "divide(subtract(vec_avg(fnd72_pit_or_is_a_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_is_a_is_tot_cash_com_dvd)), vec_avg(fnd72_pit_or_bs_q_bs_pure_retained_earnings))",
45
+ "divide(subtract(vec_avg(fnd72_pit_or_is_a_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_is_q_is_tot_cash_com_dvd)), vec_avg(fnd72_pit_or_bs_q_bs_pure_retained_earnings))",
46
+ "divide(subtract(vec_avg(fnd72_pit_or_is_q_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_is_q_is_tot_cash_com_dvd)), vec_avg(fnd72_pit_or_bs_a_bs_pure_retained_earnings))",
47
+ "divide(subtract(vec_avg(fnd72_pit_or_is_q_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_is_a_is_tot_cash_com_dvd)), vec_avg(fnd72_pit_or_bs_a_bs_pure_retained_earnings))",
48
+ "divide(subtract(vec_avg(fnd72_pit_or_is_q_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_is_q_is_tot_cash_com_dvd)), vec_avg(fnd72_pit_or_bs_q_bs_pure_retained_earnings))",
49
+ "divide(subtract(vec_avg(fnd72_pit_or_is_q_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_is_a_is_tot_cash_com_dvd)), vec_avg(fnd72_pit_or_bs_q_bs_pure_retained_earnings))",
50
+ "divide(ts_std_dev(divide(add(vec_avg(fnd72_pit_or_bs_a_bs_st_borrow), vec_avg(fnd72_pit_or_bs_a_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_a_bs_tot_asset)), 252), abs(ts_mean(divide(add(vec_avg(fnd72_pit_or_bs_a_bs_st_borrow), vec_avg(fnd72_pit_or_bs_a_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_a_bs_tot_asset)), 252)))",
51
+ "divide(ts_std_dev(divide(add(vec_avg(fnd72_pit_or_bs_a_bs_st_borrow), vec_avg(fnd72_pit_or_bs_a_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_q_bs_tot_asset)), 252), abs(ts_mean(divide(add(vec_avg(fnd72_pit_or_bs_a_bs_st_borrow), vec_avg(fnd72_pit_or_bs_a_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_q_bs_tot_asset)), 252)))",
52
+ "divide(ts_std_dev(divide(add(vec_avg(fnd72_pit_or_bs_a_bs_st_borrow), vec_avg(fnd72_pit_or_bs_q_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_a_bs_tot_asset)), 252), abs(ts_mean(divide(add(vec_avg(fnd72_pit_or_bs_a_bs_st_borrow), vec_avg(fnd72_pit_or_bs_q_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_a_bs_tot_asset)), 252)))",
53
+ "divide(ts_std_dev(divide(add(vec_avg(fnd72_pit_or_bs_a_bs_st_borrow), vec_avg(fnd72_pit_or_bs_q_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_q_bs_tot_asset)), 252), abs(ts_mean(divide(add(vec_avg(fnd72_pit_or_bs_a_bs_st_borrow), vec_avg(fnd72_pit_or_bs_q_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_q_bs_tot_asset)), 252)))",
54
+ "divide(ts_std_dev(divide(add(vec_avg(fnd72_pit_or_bs_q_bs_st_borrow), vec_avg(fnd72_pit_or_bs_a_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_a_bs_tot_asset)), 252), abs(ts_mean(divide(add(vec_avg(fnd72_pit_or_bs_q_bs_st_borrow), vec_avg(fnd72_pit_or_bs_a_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_a_bs_tot_asset)), 252)))",
55
+ "divide(ts_std_dev(divide(add(vec_avg(fnd72_pit_or_bs_q_bs_st_borrow), vec_avg(fnd72_pit_or_bs_a_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_q_bs_tot_asset)), 252), abs(ts_mean(divide(add(vec_avg(fnd72_pit_or_bs_q_bs_st_borrow), vec_avg(fnd72_pit_or_bs_a_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_q_bs_tot_asset)), 252)))",
56
+ "divide(ts_std_dev(divide(add(vec_avg(fnd72_pit_or_bs_q_bs_st_borrow), vec_avg(fnd72_pit_or_bs_q_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_a_bs_tot_asset)), 252), abs(ts_mean(divide(add(vec_avg(fnd72_pit_or_bs_q_bs_st_borrow), vec_avg(fnd72_pit_or_bs_q_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_a_bs_tot_asset)), 252)))",
57
+ "divide(ts_std_dev(divide(add(vec_avg(fnd72_pit_or_bs_q_bs_st_borrow), vec_avg(fnd72_pit_or_bs_q_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_q_bs_tot_asset)), 252), abs(ts_mean(divide(add(vec_avg(fnd72_pit_or_bs_q_bs_st_borrow), vec_avg(fnd72_pit_or_bs_q_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_q_bs_tot_asset)), 252)))",
58
+ "divide(ts_sum(vec_avg(fnd72_pit_or_cf_a_cf_cap_expend_prpty_add), 252), vec_avg(fnd72_pit_or_bs_a_bs_tot_asset))",
59
+ "divide(ts_sum(vec_avg(fnd72_pit_or_cf_a_cf_cap_expend_prpty_add), 252), vec_avg(fnd72_pit_or_bs_q_bs_tot_asset))",
60
+ "divide(ts_sum(vec_avg(fnd72_pit_or_cf_q_cf_cap_expend_prpty_add), 252), vec_avg(fnd72_pit_or_bs_a_bs_tot_asset))",
61
+ "divide(ts_sum(vec_avg(fnd72_pit_or_cf_q_cf_cap_expend_prpty_add), 252), vec_avg(fnd72_pit_or_bs_q_bs_tot_asset))",
62
+ "divide(vec_avg(fnd72_pit_or_cf_a_cf_cash_from_oper), add(vec_avg(fnd72_pit_or_bs_a_bs_acct_payable), vec_avg(fnd72_pit_or_bs_a_bs_other_cur_liab)))",
63
+ "divide(vec_avg(fnd72_pit_or_cf_a_cf_cash_from_oper), add(vec_avg(fnd72_pit_or_bs_q_bs_acct_payable), vec_avg(fnd72_pit_or_bs_a_bs_other_cur_liab)))",
64
+ "divide(vec_avg(fnd72_pit_or_cf_a_cf_cash_from_oper), add(vec_avg(fnd72_pit_or_bs_a_bs_acct_payable), vec_avg(fnd72_pit_or_bs_q_bs_other_cur_liab)))",
65
+ "divide(vec_avg(fnd72_pit_or_cf_a_cf_cash_from_oper), add(vec_avg(fnd72_pit_or_bs_q_bs_acct_payable), vec_avg(fnd72_pit_or_bs_q_bs_other_cur_liab)))",
66
+ "divide(vec_avg(fnd72_pit_or_cf_q_cf_cash_from_oper), add(vec_avg(fnd72_pit_or_bs_a_bs_acct_payable), vec_avg(fnd72_pit_or_bs_a_bs_other_cur_liab)))",
67
+ "divide(vec_avg(fnd72_pit_or_cf_q_cf_cash_from_oper), add(vec_avg(fnd72_pit_or_bs_q_bs_acct_payable), vec_avg(fnd72_pit_or_bs_a_bs_other_cur_liab)))",
68
+ "divide(vec_avg(fnd72_pit_or_cf_q_cf_cash_from_oper), add(vec_avg(fnd72_pit_or_bs_a_bs_acct_payable), vec_avg(fnd72_pit_or_bs_q_bs_other_cur_liab)))",
69
+ "divide(vec_avg(fnd72_pit_or_cf_q_cf_cash_from_oper), add(vec_avg(fnd72_pit_or_bs_q_bs_acct_payable), vec_avg(fnd72_pit_or_bs_q_bs_other_cur_liab)))",
70
+ "divide(vec_avg(fnd72_pit_or_cf_a_cf_cash_from_oper), vec_avg(fnd72_pit_or_is_a_is_net_inc_avail_com_shrhldrs))",
71
+ "divide(vec_avg(fnd72_pit_or_cf_q_cf_cash_from_oper), vec_avg(fnd72_pit_or_is_a_is_net_inc_avail_com_shrhldrs))",
72
+ "divide(vec_avg(fnd72_pit_or_cf_a_cf_cash_from_oper), vec_avg(fnd72_pit_or_is_q_is_net_inc_avail_com_shrhldrs))",
73
+ "divide(vec_avg(fnd72_pit_or_cf_q_cf_cash_from_oper), vec_avg(fnd72_pit_or_is_q_is_net_inc_avail_com_shrhldrs))",
74
+ "multiply(divide(vec_avg(fnd72_pit_or_is_a_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_bs_a_bs_tot_asset)), divide(vec_avg(fnd72_pit_or_bs_a_bs_tot_asset), vec_avg(fnd72_pit_or_bs_a_bs_tot_eqy)))",
75
+ "multiply(divide(vec_avg(fnd72_pit_or_is_a_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_bs_a_bs_tot_asset)), divide(vec_avg(fnd72_pit_or_bs_a_bs_tot_asset), vec_avg(fnd72_pit_or_bs_q_bs_tot_eqy)))",
76
+ "multiply(divide(vec_avg(fnd72_pit_or_is_a_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_bs_q_bs_tot_asset)), divide(vec_avg(fnd72_pit_or_bs_q_bs_tot_asset), vec_avg(fnd72_pit_or_bs_a_bs_tot_eqy)))",
77
+ "multiply(divide(vec_avg(fnd72_pit_or_is_a_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_bs_q_bs_tot_asset)), divide(vec_avg(fnd72_pit_or_bs_q_bs_tot_asset), vec_avg(fnd72_pit_or_bs_q_bs_tot_eqy)))",
78
+ "multiply(divide(vec_avg(fnd72_pit_or_is_q_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_bs_a_bs_tot_asset)), divide(vec_avg(fnd72_pit_or_bs_a_bs_tot_asset), vec_avg(fnd72_pit_or_bs_a_bs_tot_eqy)))",
79
+ "multiply(divide(vec_avg(fnd72_pit_or_is_q_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_bs_a_bs_tot_asset)), divide(vec_avg(fnd72_pit_or_bs_a_bs_tot_asset), vec_avg(fnd72_pit_or_bs_q_bs_tot_eqy)))",
80
+ "multiply(divide(vec_avg(fnd72_pit_or_is_q_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_bs_q_bs_tot_asset)), divide(vec_avg(fnd72_pit_or_bs_q_bs_tot_asset), vec_avg(fnd72_pit_or_bs_a_bs_tot_eqy)))",
81
+ "multiply(divide(vec_avg(fnd72_pit_or_is_q_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_bs_q_bs_tot_asset)), divide(vec_avg(fnd72_pit_or_bs_q_bs_tot_asset), vec_avg(fnd72_pit_or_bs_q_bs_tot_eqy)))",
82
+ "quantile(divide(add(vec_avg(fnd72_pit_or_bs_a_bs_st_borrow), vec_avg(fnd72_pit_or_bs_a_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_a_bs_tot_eqy)), driver=\"gaussian\")",
83
+ "quantile(divide(add(vec_avg(fnd72_pit_or_bs_a_bs_st_borrow), vec_avg(fnd72_pit_or_bs_a_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_q_bs_tot_eqy)), driver=\"gaussian\")",
84
+ "quantile(divide(add(vec_avg(fnd72_pit_or_bs_a_bs_st_borrow), vec_avg(fnd72_pit_or_bs_q_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_a_bs_tot_eqy)), driver=\"gaussian\")",
85
+ "quantile(divide(add(vec_avg(fnd72_pit_or_bs_a_bs_st_borrow), vec_avg(fnd72_pit_or_bs_q_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_q_bs_tot_eqy)), driver=\"gaussian\")",
86
+ "quantile(divide(add(vec_avg(fnd72_pit_or_bs_q_bs_st_borrow), vec_avg(fnd72_pit_or_bs_q_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_q_bs_tot_eqy)), driver=\"gaussian\")",
87
+ "quantile(divide(add(vec_avg(fnd72_pit_or_bs_q_bs_st_borrow), vec_avg(fnd72_pit_or_bs_q_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_a_bs_tot_eqy)), driver=\"gaussian\")",
88
+ "quantile(divide(add(vec_avg(fnd72_pit_or_bs_q_bs_st_borrow), vec_avg(fnd72_pit_or_bs_a_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_q_bs_tot_eqy)), driver=\"gaussian\")",
89
+ "quantile(divide(add(vec_avg(fnd72_pit_or_bs_q_bs_st_borrow), vec_avg(fnd72_pit_or_bs_a_bs_lt_borrow)), vec_avg(fnd72_pit_or_bs_a_bs_tot_eqy)), driver=\"gaussian\")",
90
+ "regression_neut(divide(vec_avg(fnd72_pit_or_is_a_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_bs_a_bs_tot_asset)), vec_avg(fnd72_pit_or_bs_a_bs_tot_asset))",
91
+ "regression_neut(divide(vec_avg(fnd72_pit_or_is_a_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_bs_q_bs_tot_asset)), vec_avg(fnd72_pit_or_bs_q_bs_tot_asset))",
92
+ "regression_neut(divide(vec_avg(fnd72_pit_or_is_q_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_bs_a_bs_tot_asset)), vec_avg(fnd72_pit_or_bs_a_bs_tot_asset))",
93
+ "regression_neut(divide(vec_avg(fnd72_pit_or_is_q_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_bs_q_bs_tot_asset)), vec_avg(fnd72_pit_or_bs_q_bs_tot_asset))",
94
+ "subtract(divide(vec_avg(fnd72_pit_or_is_a_is_int_expense), add(vec_avg(fnd72_pit_or_bs_a_bs_st_borrow), vec_avg(fnd72_pit_or_bs_a_bs_lt_borrow))), vec_avg(fnd72_pit_or_is_a_eff_int_rate))",
95
+ "subtract(divide(vec_avg(fnd72_pit_or_is_a_is_int_expense), add(vec_avg(fnd72_pit_or_bs_a_bs_st_borrow), vec_avg(fnd72_pit_or_bs_a_bs_lt_borrow))), vec_avg(fnd72_pit_or_is_q_eff_int_rate))",
96
+ "subtract(divide(vec_avg(fnd72_pit_or_is_a_is_int_expense), add(vec_avg(fnd72_pit_or_bs_a_bs_st_borrow), vec_avg(fnd72_pit_or_bs_q_bs_lt_borrow))), vec_avg(fnd72_pit_or_is_a_eff_int_rate))",
97
+ "subtract(divide(vec_avg(fnd72_pit_or_is_a_is_int_expense), add(vec_avg(fnd72_pit_or_bs_a_bs_st_borrow), vec_avg(fnd72_pit_or_bs_q_bs_lt_borrow))), vec_avg(fnd72_pit_or_is_q_eff_int_rate))",
98
+ "subtract(divide(vec_avg(fnd72_pit_or_is_a_is_int_expense), add(vec_avg(fnd72_pit_or_bs_q_bs_st_borrow), vec_avg(fnd72_pit_or_bs_a_bs_lt_borrow))), vec_avg(fnd72_pit_or_is_a_eff_int_rate))",
99
+ "subtract(divide(vec_avg(fnd72_pit_or_is_a_is_int_expense), add(vec_avg(fnd72_pit_or_bs_q_bs_st_borrow), vec_avg(fnd72_pit_or_bs_a_bs_lt_borrow))), vec_avg(fnd72_pit_or_is_q_eff_int_rate))",
100
+ "subtract(divide(vec_avg(fnd72_pit_or_is_a_is_int_expense), add(vec_avg(fnd72_pit_or_bs_q_bs_st_borrow), vec_avg(fnd72_pit_or_bs_q_bs_lt_borrow))), vec_avg(fnd72_pit_or_is_a_eff_int_rate))",
101
+ "subtract(divide(vec_avg(fnd72_pit_or_is_a_is_int_expense), add(vec_avg(fnd72_pit_or_bs_q_bs_st_borrow), vec_avg(fnd72_pit_or_bs_q_bs_lt_borrow))), vec_avg(fnd72_pit_or_is_q_eff_int_rate))",
102
+ "subtract(divide(vec_avg(fnd72_pit_or_is_q_is_int_expense), add(vec_avg(fnd72_pit_or_bs_a_bs_st_borrow), vec_avg(fnd72_pit_or_bs_a_bs_lt_borrow))), vec_avg(fnd72_pit_or_is_q_eff_int_rate))",
103
+ "subtract(divide(vec_avg(fnd72_pit_or_is_q_is_int_expense), add(vec_avg(fnd72_pit_or_bs_a_bs_st_borrow), vec_avg(fnd72_pit_or_bs_a_bs_lt_borrow))), vec_avg(fnd72_pit_or_is_a_eff_int_rate))",
104
+ "subtract(divide(vec_avg(fnd72_pit_or_is_q_is_int_expense), add(vec_avg(fnd72_pit_or_bs_a_bs_st_borrow), vec_avg(fnd72_pit_or_bs_q_bs_lt_borrow))), vec_avg(fnd72_pit_or_is_q_eff_int_rate))",
105
+ "subtract(divide(vec_avg(fnd72_pit_or_is_q_is_int_expense), add(vec_avg(fnd72_pit_or_bs_a_bs_st_borrow), vec_avg(fnd72_pit_or_bs_q_bs_lt_borrow))), vec_avg(fnd72_pit_or_is_a_eff_int_rate))",
106
+ "subtract(divide(vec_avg(fnd72_pit_or_is_q_is_int_expense), add(vec_avg(fnd72_pit_or_bs_q_bs_st_borrow), vec_avg(fnd72_pit_or_bs_a_bs_lt_borrow))), vec_avg(fnd72_pit_or_is_q_eff_int_rate))",
107
+ "subtract(divide(vec_avg(fnd72_pit_or_is_q_is_int_expense), add(vec_avg(fnd72_pit_or_bs_q_bs_st_borrow), vec_avg(fnd72_pit_or_bs_a_bs_lt_borrow))), vec_avg(fnd72_pit_or_is_a_eff_int_rate))",
108
+ "subtract(divide(vec_avg(fnd72_pit_or_is_q_is_int_expense), add(vec_avg(fnd72_pit_or_bs_q_bs_st_borrow), vec_avg(fnd72_pit_or_bs_q_bs_lt_borrow))), vec_avg(fnd72_pit_or_is_q_eff_int_rate))",
109
+ "subtract(divide(vec_avg(fnd72_pit_or_is_q_is_int_expense), add(vec_avg(fnd72_pit_or_bs_q_bs_st_borrow), vec_avg(fnd72_pit_or_bs_q_bs_lt_borrow))), vec_avg(fnd72_pit_or_is_a_eff_int_rate))",
110
+ "subtract(divide(vec_avg(fnd72_pit_or_is_a_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_is_a_sales_rev_turn)), divide(vec_avg(fnd72_pit_or_is_a_is_int_expense), vec_avg(fnd72_pit_or_is_a_sales_rev_turn)))",
111
+ "subtract(divide(vec_avg(fnd72_pit_or_is_a_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_is_q_sales_rev_turn)), divide(vec_avg(fnd72_pit_or_is_a_is_int_expense), vec_avg(fnd72_pit_or_is_q_sales_rev_turn)))",
112
+ "subtract(divide(vec_avg(fnd72_pit_or_is_a_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_is_a_sales_rev_turn)), divide(vec_avg(fnd72_pit_or_is_q_is_int_expense), vec_avg(fnd72_pit_or_is_a_sales_rev_turn)))",
113
+ "subtract(divide(vec_avg(fnd72_pit_or_is_a_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_is_q_sales_rev_turn)), divide(vec_avg(fnd72_pit_or_is_q_is_int_expense), vec_avg(fnd72_pit_or_is_q_sales_rev_turn)))",
114
+ "subtract(divide(vec_avg(fnd72_pit_or_is_q_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_is_q_sales_rev_turn)), divide(vec_avg(fnd72_pit_or_is_q_is_int_expense), vec_avg(fnd72_pit_or_is_q_sales_rev_turn)))",
115
+ "subtract(divide(vec_avg(fnd72_pit_or_is_q_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_is_a_sales_rev_turn)), divide(vec_avg(fnd72_pit_or_is_q_is_int_expense), vec_avg(fnd72_pit_or_is_a_sales_rev_turn)))",
116
+ "subtract(divide(vec_avg(fnd72_pit_or_is_q_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_is_q_sales_rev_turn)), divide(vec_avg(fnd72_pit_or_is_a_is_int_expense), vec_avg(fnd72_pit_or_is_q_sales_rev_turn)))",
117
+ "subtract(divide(vec_avg(fnd72_pit_or_is_q_is_net_inc_avail_com_shrhldrs), vec_avg(fnd72_pit_or_is_a_sales_rev_turn)), divide(vec_avg(fnd72_pit_or_is_a_is_int_expense), vec_avg(fnd72_pit_or_is_a_sales_rev_turn)))",
118
+ "ts_av_diff(divide(vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec), vec_avg(fnd72_pit_or_is_a_sales_rev_turn)), 504)",
119
+ "ts_av_diff(divide(vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec), vec_avg(fnd72_pit_or_is_q_sales_rev_turn)), 504)",
120
+ "ts_av_diff(divide(vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec), vec_avg(fnd72_pit_or_is_a_sales_rev_turn)), 504)",
121
+ "ts_av_diff(divide(vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec), vec_avg(fnd72_pit_or_is_q_sales_rev_turn)), 504)",
122
+ "ts_corr(vec_avg(fnd72_pit_or_cf_a_cf_cash_from_oper), vec_avg(fnd72_pit_or_is_a_sales_rev_turn), 504)",
123
+ "ts_corr(vec_avg(fnd72_pit_or_cf_a_cf_cash_from_oper), vec_avg(fnd72_pit_or_is_q_sales_rev_turn), 504)",
124
+ "ts_corr(vec_avg(fnd72_pit_or_cf_q_cf_cash_from_oper), vec_avg(fnd72_pit_or_is_a_sales_rev_turn), 504)",
125
+ "ts_corr(vec_avg(fnd72_pit_or_cf_q_cf_cash_from_oper), vec_avg(fnd72_pit_or_is_q_sales_rev_turn), 504)",
126
+ "ts_delta(divide(vec_avg(fnd72_pit_or_cf_a_cf_chng_non_cash_work_cap), vec_avg(fnd72_pit_or_is_a_sales_rev_turn)), 63)",
127
+ "ts_delta(divide(vec_avg(fnd72_pit_or_cf_a_cf_chng_non_cash_work_cap), vec_avg(fnd72_pit_or_is_q_sales_rev_turn)), 63)",
128
+ "ts_delta(divide(vec_avg(fnd72_pit_or_cf_q_cf_chng_non_cash_work_cap), vec_avg(fnd72_pit_or_is_a_sales_rev_turn)), 63)",
129
+ "ts_delta(divide(vec_avg(fnd72_pit_or_cf_q_cf_chng_non_cash_work_cap), vec_avg(fnd72_pit_or_is_q_sales_rev_turn)), 63)",
130
+ "ts_delta(divide(vec_avg(fnd72_pit_or_bs_a_invtry_raw_materials), add(add(vec_avg(fnd72_pit_or_bs_a_invtry_raw_materials), vec_avg(fnd72_pit_or_bs_a_invtry_in_progress)), vec_avg(fnd72_pit_or_bs_a_invtry_finished_goods))), 63)",
131
+ "ts_delta(divide(vec_avg(fnd72_pit_or_bs_a_invtry_raw_materials), add(add(vec_avg(fnd72_pit_or_bs_a_invtry_raw_materials), vec_avg(fnd72_pit_or_bs_q_invtry_in_progress)), vec_avg(fnd72_pit_or_bs_a_invtry_finished_goods))), 63)",
132
+ "ts_delta(divide(vec_avg(fnd72_pit_or_bs_q_invtry_raw_materials), add(add(vec_avg(fnd72_pit_or_bs_q_invtry_raw_materials), vec_avg(fnd72_pit_or_bs_a_invtry_in_progress)), vec_avg(fnd72_pit_or_bs_a_invtry_finished_goods))), 63)",
133
+ "ts_delta(divide(vec_avg(fnd72_pit_or_bs_q_invtry_raw_materials), add(add(vec_avg(fnd72_pit_or_bs_q_invtry_raw_materials), vec_avg(fnd72_pit_or_bs_q_invtry_in_progress)), vec_avg(fnd72_pit_or_bs_a_invtry_finished_goods))), 63)",
134
+ "ts_delta(divide(vec_avg(fnd72_pit_or_bs_q_invtry_raw_materials), add(add(vec_avg(fnd72_pit_or_bs_q_invtry_raw_materials), vec_avg(fnd72_pit_or_bs_q_invtry_in_progress)), vec_avg(fnd72_pit_or_bs_q_invtry_finished_goods))), 63)",
135
+ "ts_delta(divide(vec_avg(fnd72_pit_or_bs_q_invtry_raw_materials), add(add(vec_avg(fnd72_pit_or_bs_q_invtry_raw_materials), vec_avg(fnd72_pit_or_bs_a_invtry_in_progress)), vec_avg(fnd72_pit_or_bs_q_invtry_finished_goods))), 63)",
136
+ "ts_delta(divide(vec_avg(fnd72_pit_or_bs_a_invtry_raw_materials), add(add(vec_avg(fnd72_pit_or_bs_a_invtry_raw_materials), vec_avg(fnd72_pit_or_bs_q_invtry_in_progress)), vec_avg(fnd72_pit_or_bs_q_invtry_finished_goods))), 63)",
137
+ "ts_delta(divide(vec_avg(fnd72_pit_or_bs_a_invtry_raw_materials), add(add(vec_avg(fnd72_pit_or_bs_a_invtry_raw_materials), vec_avg(fnd72_pit_or_bs_a_invtry_in_progress)), vec_avg(fnd72_pit_or_bs_q_invtry_finished_goods))), 63)"
138
+ ]
@@ -0,0 +1,38 @@
1
+ {
2
+ "template": "divide(add(add(vec_avg({bs_cash_near_cash_item}), vec_avg({accts_rec_excl_notes_rec})), vec_avg({inventories})), vec_avg({bs_cur_asset_report}))",
3
+ "idea": "**Concept**: Liquid Asset Purity Ratio\n- **Sample Fields Used**: bs_cash_near_cash_item, bs_accts_rec_excl_notes_rec, inventories, bs_cur_asset_report\n- **Definition**: Proportion of current assets comprised of cash and near-cash items versus receivables and inventory\n- **Why This Feature**: Composition of current assets indicates liquidity quality; high receivables/inventory suggests committed working capital, high cash suggests flexibility but potentially inefficient deployment\n- **Logical Meaning**: Measures the liquidity structure and quality of current assets\n- **Directionality**: Higher values indicate higher liquidity quality (more cash); lower values indicate capital-intensive working capital structure\n- **Boundary Conditions**: Approaches 1.0 for cash-rich companies; approaches 0 for highly leveraged working capital structures",
4
+ "expression_list": [
5
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_a_bs_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
6
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_q_bs_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
7
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_a_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
8
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_q_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
9
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_a_bs_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
10
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_q_bs_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
11
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_a_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
12
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_q_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
13
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_a_bs_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
14
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_q_bs_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
15
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_a_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
16
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_q_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
17
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_a_bs_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
18
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_q_bs_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
19
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_a_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
20
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_a_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_q_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
21
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_q_bs_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
22
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_a_bs_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
23
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_a_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
24
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_q_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
25
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_q_bs_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
26
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_a_bs_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
27
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_a_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
28
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_q_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_q_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
29
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_q_bs_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
30
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_a_bs_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
31
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_a_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
32
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_q_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_q_bs_cur_asset_report))",
33
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_q_bs_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
34
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_bs_a_bs_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
35
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_a_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))",
36
+ "divide(add(add(vec_avg(fnd72_pit_or_bs_a_bs_cash_near_cash_item), vec_avg(fnd72_pit_or_bs_q_bs_accts_rec_excl_notes_rec)), vec_avg(fnd72_pit_or_cf_q_cf_change_in_inventories)), vec_avg(fnd72_pit_or_bs_a_bs_cur_asset_report))"
37
+ ]
38
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "template": "divide(subtract(vec_avg({bs_tot_asset}), vec_avg({bs_disclosed_intangibles})), vec_avg({bs_tot_liab_eqy}))",
3
+ "idea": "**Concept**: Tangible Capital Structure\n- **Sample Fields Used**: bs_disclosed_intangibles, bs_tot_asset, bs_tot_liab_eqy\n- **Definition**: Net tangible assets (total assets minus intangibles) as a proportion of total capital\n- **Why This Feature**: Intangibles represent uncertain liquidation values; this metric reveals the tangible collateral backing the capital structure, critical for credit analysis and liquidation scenarios\n- **Logical Meaning**: Measures the tangible asset backing of the enterprise value\n- **Directionality**: Higher values indicate more collateralizable assets (safer for creditors); lower values indicate knowledge-intensive/asset-light models\n- **Boundary Conditions**: Near 0 for pure IP/brand companies; near 1 for heavy industrial companies",
4
+ "expression_list": [
5
+ "divide(subtract(vec_avg(fnd72_pit_or_bs_a_bs_tot_asset), vec_avg(fnd72_pit_or_bs_a_bs_disclosed_intangibles)), vec_avg(fnd72_pit_or_bs_a_bs_tot_liab_eqy))",
6
+ "divide(subtract(vec_avg(fnd72_pit_or_bs_q_bs_tot_asset), vec_avg(fnd72_pit_or_bs_a_bs_disclosed_intangibles)), vec_avg(fnd72_pit_or_bs_a_bs_tot_liab_eqy))",
7
+ "divide(subtract(vec_avg(fnd72_pit_or_bs_a_bs_tot_asset), vec_avg(fnd72_pit_or_bs_a_bs_disclosed_intangibles)), vec_avg(fnd72_pit_or_bs_q_bs_tot_liab_eqy))",
8
+ "divide(subtract(vec_avg(fnd72_pit_or_bs_q_bs_tot_asset), vec_avg(fnd72_pit_or_bs_a_bs_disclosed_intangibles)), vec_avg(fnd72_pit_or_bs_q_bs_tot_liab_eqy))",
9
+ "divide(subtract(vec_avg(fnd72_pit_or_bs_q_bs_tot_asset), vec_avg(fnd72_pit_or_bs_q_bs_disclosed_intangibles)), vec_avg(fnd72_pit_or_bs_q_bs_tot_liab_eqy))",
10
+ "divide(subtract(vec_avg(fnd72_pit_or_bs_a_bs_tot_asset), vec_avg(fnd72_pit_or_bs_q_bs_disclosed_intangibles)), vec_avg(fnd72_pit_or_bs_q_bs_tot_liab_eqy))",
11
+ "divide(subtract(vec_avg(fnd72_pit_or_bs_q_bs_tot_asset), vec_avg(fnd72_pit_or_bs_q_bs_disclosed_intangibles)), vec_avg(fnd72_pit_or_bs_a_bs_tot_liab_eqy))",
12
+ "divide(subtract(vec_avg(fnd72_pit_or_bs_a_bs_tot_asset), vec_avg(fnd72_pit_or_bs_q_bs_disclosed_intangibles)), vec_avg(fnd72_pit_or_bs_a_bs_tot_liab_eqy))"
13
+ ]
14
+ }