Trade reporting and compliance engine

Unlike stocks, which generally trade transparently on public exchanges, corporate bonds and structured products trade "over-the-counter", meaning they are private transactions between individual counterparties, and so the transactions were generally not publicly reported. To create better transparency into the bond market, the Securities and Exchange Commission under the Rule 6200 Series instituted the trade reporting and compliance engine (TRACE). TRACE has two major aspects:

  • rules that describe which bond transactions must be publicly reported and when;
  • a technology platform that gathers transaction data and makes it available to the public.[1]

Starting in 2001, and allowing a two-year comment period, the SEC published the TRACE rules, marking the first time many bond trades were subject to public reporting.[2] The TRACE technology platform allows member firms of the Financial Industry Regulatory Authority (FINRA, formerly the National Association of Security Dealers, NASD) to report trades in fixed-income securities. It also allows the public to view and download market data, including prices and trade volume for corporate bonds and structured products, in some cases going back to 2009. The first phase of TRACE was implemented in July 2002.

Notes


gollark: ``` func AddInt32(addr *int32, delta int32) (new int32) func AddInt64(addr *int64, delta int64) (new int64) func AddUint32(addr *uint32, delta uint32) (new uint32) func AddUint64(addr *uint64, delta uint64) (new uint64) func AddUintptr(addr *uintptr, delta uintptr) (new uintptr) func CompareAndSwapInt32(addr *int32, old, new int32) (swapped bool) func CompareAndSwapInt64(addr *int64, old, new int64) (swapped bool) func CompareAndSwapPointer(addr *unsafe.Pointer, old, new unsafe.Pointer) (swapped bool) func CompareAndSwapUint32(addr *uint32, old, new uint32) (swapped bool) func CompareAndSwapUint64(addr *uint64, old, new uint64) (swapped bool) func CompareAndSwapUintptr(addr *uintptr, old, new uintptr) (swapped bool) func LoadInt32(addr *int32) (val int32) func LoadInt64(addr *int64) (val int64) func LoadPointer(addr *unsafe.Pointer) (val unsafe.Pointer) func LoadUint32(addr *uint32) (val uint32) func LoadUint64(addr *uint64) (val uint64) func LoadUintptr(addr *uintptr) (val uintptr) func StoreInt32(addr *int32, val int32) func StoreInt64(addr *int64, val int64) func StorePointer(addr *unsafe.Pointer, val unsafe.Pointer) func StoreUint32(addr *uint32, val uint32) func StoreUint64(addr *uint64, val uint64) func StoreUintptr(addr *uintptr, val uintptr) func SwapInt32(addr *int32, new int32) (old int32) func SwapInt64(addr *int64, new int64) (old int64) func SwapPointer(addr *unsafe.Pointer, new unsafe.Pointer) (old unsafe.Pointer) func SwapUint32(addr *uint32, new uint32) (old uint32) func SwapUint64(addr *uint64, new uint64) (old uint64) func SwapUintptr(addr *uintptr, new uintptr) (old uintptr)```Seen in standard library docs.
gollark: Fun fact: that function cannot be written with a sane type in Go.
gollark: Esolang where multiple different garbage collectors run at the same time.
gollark: When you make an esolang in which it isn't!
gollark: "GCs are actually deterministic"? I smell an overgeneralization!
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.