Replication & Data Policy (jbf-replication-and-data-policy)
When to trigger
- The paper uses CRSP, Compustat, BankFocus, Dealscan, TRACE, Call Reports, hand-collected data, or simulations
- You need a data availability statement for Elsevier/JBF submission
- You want a legal and useful replication package despite proprietary data
Policy stance
JBF follows Elsevier Option C research-data instructions. At submission, authors
must state data availability. For shareable data, deposit the research data in a
relevant repository and cite/link it in the article. If data cannot be shared,
state why (for example, proprietary, sensitive, confidential, or licensing limits).
JBF does not operate a dedicated journal-run replication archive, so the practical
package should combine a repository deposit where rights allow, code, metadata,
and a precise access route for restricted inputs.
Package structure
README.md
data_access/ # licensed-data instructions, not raw proprietary files
code/
00_setup.*
01_build_sample.*
02_main_tables.*
03_figures.*
04_robustness.*
output/
tables/
figures/
requirements.* # renv.lock / requirements.txt / Stata package list
Data availability statements
- Public data: name source, URL, access date, and archive copy if permitted.
- Proprietary data: identify vendor, product, access terms, and exact query or
extraction instructions; do not redistribute restricted files.
- Hand-collected data: share the dataset if rights allow, with coding rules.
- No external data / simulation: state that no external data were used and
provide simulation code and seeds.
Code expectations
- One master script regenerates all tables and figures.
- Random seeds and software versions are recorded.
- Output files match manuscript numbering.
- Confidential paths and author identity are removed before double-anonymized submission.
Proprietary-data audit
For licensed banking/finance sources, add a data_access/README.md that records:
- vendor/product, query filters, identifiers, and date accessed;
- variables needed to recreate the analysis;
- any hand-cleaning or link-table rules;
- whether a pseudo dataset can exercise the full code path;
- who can legally access the raw data and under what license.
Source-by-source sharing matrix
| Typical JBF source |
Redistribution |
What the package carries instead |
| US Call Reports / FDIC SDI |
public — share extracts |
pull scripts with vintage, date, and series mnemonics |
| Orbis Bank Focus / BankScope legacy |
licensed — do not share |
query filters, consolidation codes, variable list, access date |
| DealScan |
licensed — do not share |
extraction steps, facility/package level, link-table code |
| CRSP / Compustat (when used) |
licensed — do not share |
WRDS query description and merge keys |
| Hand-collected regulatory events |
usually shareable |
coding manual, per-event sources, inter-coder checks |
| Confidential supervisory data |
cannot leave the authority |
aggregate descriptives plus the access route for replicators |
Worked statement draft (illustrative)
Data availability. Bank balance-sheet data come from US Call Reports (FFIEC,
public; pull scripts and vintages in /code/01). Loan-facility data are from
DealScan under license; we provide extraction filters and borrower link-table
code but not raw files. Hand-collected deregulation dates and coding rules are
deposited with the package. All tables and figures regenerate from run_all
with the licensed inputs in place; a synthetic sample exercises the full
pipeline without them.
Pre-submission package audit
A package failing two or more boxes usually signals deeper pipeline debt; route back to jbf-data-analysis before drafting the statement.
Editor pushbacks on data
- "The package cannot run without DealScan." → ship a synthetic or masked sample that exercises every script end to end.
- "Which Bank Focus vintage?" → record vendor vintage and download date; bank coverage shifts across vintages.
- "Confidential supervisory data make this unreviewable." → document the authority's access procedure and provide all code plus aggregate moments; the data statement must explain the access limits.
Output format
[Data status] public / proprietary / confidential / simulated / mixed
[Statement draft] ...
[Shareable files] ...
[Restricted files] ...
[Reproducibility gaps] ...
[Next step] jbf-submission
1---2name: jbf-replication-and-data-policy3description: Use when preparing the required data statement, code archive, repository deposit/link, and proprietary-data documentation for a Journal of Banking & Finance manuscript under Elsevier Option C research-data expectations.4---56# Replication & Data Policy (jbf-replication-and-data-policy)78## When to trigger910- The paper uses CRSP, Compustat, BankFocus, Dealscan, TRACE, Call Reports, hand-collected data, or simulations11- You need a data availability statement for Elsevier/JBF submission12- You want a legal and useful replication package despite proprietary data1314## Policy stance1516JBF follows Elsevier **Option C** research-data instructions. At submission, authors17must state data availability. For shareable data, deposit the research data in a18relevant repository and cite/link it in the article. If data cannot be shared,19state why (for example, proprietary, sensitive, confidential, or licensing limits).20JBF does not operate a dedicated journal-run replication archive, so the practical21package should combine a repository deposit where rights allow, code, metadata,22and a precise access route for restricted inputs.2324## Package structure2526```text27README.md28data_access/ # licensed-data instructions, not raw proprietary files29code/30 00_setup.*31 01_build_sample.*32 02_main_tables.*33 03_figures.*34 04_robustness.*35output/36 tables/37 figures/38requirements.* # renv.lock / requirements.txt / Stata package list39```4041## Data availability statements4243- **Public data**: name source, URL, access date, and archive copy if permitted.44- **Proprietary data**: identify vendor, product, access terms, and exact query or45 extraction instructions; do not redistribute restricted files.46- **Hand-collected data**: share the dataset if rights allow, with coding rules.47- **No external data / simulation**: state that no external data were used and48 provide simulation code and seeds.4950## Code expectations5152- One master script regenerates all tables and figures.53- Random seeds and software versions are recorded.54- Output files match manuscript numbering.55- Confidential paths and author identity are removed before double-anonymized submission.5657## Proprietary-data audit5859For licensed banking/finance sources, add a `data_access/README.md` that records:6061- vendor/product, query filters, identifiers, and date accessed;62- variables needed to recreate the analysis;63- any hand-cleaning or link-table rules;64- whether a pseudo dataset can exercise the full code path;65- who can legally access the raw data and under what license.6667## Source-by-source sharing matrix6869| Typical JBF source | Redistribution | What the package carries instead |70| --- | --- | --- |71| US Call Reports / FDIC SDI | public — share extracts | pull scripts with vintage, date, and series mnemonics |72| Orbis Bank Focus / BankScope legacy | licensed — do not share | query filters, consolidation codes, variable list, access date |73| DealScan | licensed — do not share | extraction steps, facility/package level, link-table code |74| CRSP / Compustat (when used) | licensed — do not share | WRDS query description and merge keys |75| Hand-collected regulatory events | usually shareable | coding manual, per-event sources, inter-coder checks |76| Confidential supervisory data | cannot leave the authority | aggregate descriptives plus the access route for replicators |7778## Worked statement draft (illustrative)7980```text81Data availability. Bank balance-sheet data come from US Call Reports (FFIEC,82public; pull scripts and vintages in /code/01). Loan-facility data are from83DealScan under license; we provide extraction filters and borrower link-table84code but not raw files. Hand-collected deregulation dates and coding rules are85deposited with the package. All tables and figures regenerate from run_all86with the licensed inputs in place; a synthetic sample exercises the full87pipeline without them.88```8990## Pre-submission package audit9192- [ ] `run_all` executes on a clean machine with only the licensed inputs mounted93- [ ] every manuscript exhibit maps to exactly one output file, with matching numbering94- [ ] the synthetic or masked sample passes every script end to end95- [ ] vendor vintages and download dates recorded for Bank Focus, DealScan, and any WRDS pulls96- [ ] no author-identifying paths or initials in code comments (double-anonymized review)97- [ ] repository deposit linked and cited where rights allow, or non-sharing reason stated clearly9899A package failing two or more boxes usually signals deeper pipeline debt; route back to `jbf-data-analysis` before drafting the statement.100101## Editor pushbacks on data102103- "The package cannot run without DealScan." → ship a synthetic or masked sample that exercises every script end to end.104- "Which Bank Focus vintage?" → record vendor vintage and download date; bank coverage shifts across vintages.105- "Confidential supervisory data make this unreviewable." → document the authority's access procedure and provide all code plus aggregate moments; the data statement must explain the access limits.106107## Output format108109```text110[Data status] public / proprietary / confidential / simulated / mixed111[Statement draft] ...112[Shareable files] ...113[Restricted files] ...114[Reproducibility gaps] ...115[Next step] jbf-submission116```