Giter Site home page Giter Site logo

fire's Introduction

layout title
readme
Home

logo-fire-red

Financial Regulatory (FIRE) Data Standard


Build Status Project Website Apache 2.0 License Join the chat at https://gitter.im/SuadeLabs/fire Contributor Guidelines

What is the FIRE data standard?

The Financial Regulatory Data Standard (FIRE) defines a common specification for the transmission of granular data between regulatory systems in finance. Regulatory data refers to the data that underlies regulatory submissions, requirements, calculations and is used for policy, monitoring and supervision purposes.

The FIRE data schemas and code samples are licensed under the Apache 2.0 License which has been chosen for being open, permissive and already widely accepted within the financial sector (think Hadoop, Cassandra, ActiveMQ).

The FIRE data standard is supported by the European Commission, the Open Data Institute and the Open Data Incubator for Europe via the Horizon 2020 funding programme.


Please see the contributing guidelines and guiding principles if you would like to contribute to this project.

Random FIRE Data Generator

Included is a random data generator which will generate data in line with the FIRE schema, but not necessarily realistic. (eg. You might get a loan with a balance of 10 but accrued interest of 1 million)

Testing

You can run tests locally via ./run_tests.sh or view the CI test results here


fire's People

Contributors

16745266 avatar albieduffy avatar alex-stet avatar anh-suade avatar bobbypowar avatar brancyx avatar charliequarterman avatar enzocc avatar fintechdummy avatar ggschwendtner avatar habospace avatar jayden-bis avatar jesper avatar jghslol avatar joellecenedra avatar jonathanvv1989 avatar jonnykhedair avatar kamildomo94 avatar laebaqasim avatar lucal237 avatar muratabur avatar nabilasdrjt avatar olliemath avatar samir-dahmani avatar sarahlm96 avatar seelan93 avatar tayfenyee avatar wilsonlcw avatar yfnaji avatar yumikab avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

fire's Issues

Enhance securitisation attributes

excess_spread_type no excess spread
  fixed - trapped
  fixed – use or lose
  variable – trapped
  variable - use or lose
   
amortisation_system Sequential amortisation
  Pro-rata amortisation
  Pro-rata amortisation changing to sequential amortisation. Compliant with STS criteria for on-balance sheet securitisations (Article 26c (5) of Regulation (EU) 2017/2402).
  Pro-rata amortisation changing to sequential amortisation. Compliant with STS criteria for non-ABCP transactions (Guidelines on STS criteria for non-ABCP transactions and Article 21 (5) of Regulation (EU) 2017/2402
  Pro-rata amortisation changing to sequential amortisation. Not compliant
  Other amortisation system
   
retention_type Vertical slice (securitisation positions): “retention of no less than 5 % of the nominal value of each of the tranches sold or transferred to the investors”
  V - Vertical slice (securitised exposures): retention of no less than 5 % of the credit risk of each of the securitised exposures, if the credit risk thus retained with respect to such securitised exposures always ranks pari passu with, or is subordinated to, the credit risk that has been securitised with respect to those same exposures;B - Revolving exposures: ”in the case of securitisations of revolving exposures, retention of the originator’s interest of no less than 5 % of the nominal value of the securitised exposures”;
  C- On-balance sheet: “retention of randomly selected exposures, equivalent to no less than 5 % of the nominal amount of the securitised exposures, where such exposures would otherwise have been securitised in the securitisation, provided that the number of potentially securitised exposures is no less than 100 at origination”;
  D- First loss: “retention of the first loss tranche and, if necessary, other tranches having the same or a more severe risk profile than those transferred or sold to investors and not maturing any earlier than those transferred or sold to investors, so that the retention equals in total no less than 5 % of the nominal value of the securitised exposures”;
  E – Exempted. This code shall be reported for those securitisations affected by the application of Article 6(6) of Regulation (EU) 2017/2402;
retention_percentage  
type Abs_CC_rec
  Abs_SME_retail
  Abs_wholesale_loans
  Abs_SME_corporate
  ABS_corporate
  Abs_lease
  Abs_trade_rec
  Abs_wholesale_other
clean_up_call  
seniority Senior
  Mezzanine
  First_loss

Add documentation to loan_transaction type

Add a test to ensure that examples comply with the schema

There should be a test catching cases where example refers an invalid attribute, or an invalid value for a given attribute.

For instance, this example: https://github.com/SuadeLabs/fire/blob/master/examples/collateral_variation_margin_cash_posted.json

One of the agreements has credit_support_type: "other", but "other" is not a valid credit_support_type according to the schema. This should have been picked up by a test when the example was added (or the schema changed).

image

image

Sample data would be great

Example JSON blobs of Loans/Accounts/Customer etc would be helpful for people wanting to become FIRE compatible.

XBRL and FIRE

With the more popular and widely adopted data exchange format standards such as XBRL, can this format be translated into XBRL format to form a formal verification / gap analysis of compliance requirements against the reported data?

Are there any architecture diagrams of how FIRE data exchange format for regulatory data can be implemented or commonly should fit in an information infrastructure?

Create a transaction base schema

Account transaction and loan transaction schemas are very similar.
Create a base transaction schema with the common fields and extend them with properties specific to each account/loan transaction.

Adjustments: contribution_amount and contributon_text are not exclusive

In particular, this is valid under a compliant JSON-schema validator, so long as currency_code is not present:

{"id": "a", "contribution_amount": 123, "contribution_text": "hi", ....}

This is because the oneOf logic here https://github.com/SuadeLabs/fire/blob/master/v1-dev/adjustment.json#L62 is an exclusive or implemented like

(a or b) and not (a and b)

Solution

We should change this to

"oneOf": [
   {"required": ["id", "date", "report_type", "row", "col", "contribution_amount"]},
   {"required": ["id", "date", "report_type", "row", "col", "contribution_text"]}
 ],
 "dependencies": {
      "contribution_amount": ["currency_code"]
}

this would make these fields exclusive and would mean that if contribution_amount is populated, currency_code must be too.

Should there be a "BankData" base object?

All of the schemas have a "id" and "date" field. All the schemas (except batch) inherit from "object". If we instead create a base schema called "BankData" that has id/date, then all child schemas can inherit from that and get the fields automatically.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.