| Type | Example | Description |
|---|---|---|
| Basics | Basic Graph | Basic sum of constant integers |
| Ticking Graphs | Cumulative sum of streaming integers | |
| Visualizing a Graph | Bid-ask spread of a trade with graph visualization | |
| Complete Example (Trading) | Volume weighted average price (VWAP) and profit and loss (PnL) | |
| Complete Example (Retail) | Maintain a shopping cart with time-based discounts for customers | |
| Intermediate | Feedback Connections | Add a feedback edge between nodes in a graph |
| Statistics Nodes | Use the CSP statistics library on simulated trading data | |
| Statistics Nodes with Numpy | Rolling window statistics on a set of three symbols using NumPy arrays | |
Expression Nodes with exprtk |
Calculate mathematical expressions with streaming data | |
| Using Adapters | Kafka Adapter Example | Stream data from a Kafka bus using KafkaAdapterManager and MessageMapper |
| Parquet Adapter Example | Read from and write CSP data to Parquet files | |
| Websocket Client | Send and receive messages over a websocket connection | |
| Websocket Output | Send data over a websocket connection and view HTML output | |
| Writing Adapters | Generic Push Adapter | Push real-time data into a CSP graph |
| Pull Input Adapter | Replay historical data using a pull adapter | |
| Pull Input Adapter with Adapter Manager | Provide data to multiple input adapters from a single source | |
| Push Input Adapter | Write your own push adapter for real-time data | |
| Push Input Adapter with Adapter Manager | Use an adapter manager with real-time data sources | |
| Output Adapter | Create a custom writer for CSP output data | |
| Complete Input/Output Adapter with Adapter Manager | Manage input and output adapters with a single adapter manager | |
| Push-Pull Input Adapter for Earthquake Data | Create a push-pull adapter which transitions from replay to live execution | |
| Writing C++ Nodes and Adapters | C++ Node | Extend CSP with a pig latin C++ node |
C++ Node with csp.Struct |
Write a C++ node with a csp.Struct input | |
| Advanced | Dynamic Graphs | Update the shape of a graph at runtime |
| Pandas Extension | Use CSP within a pandas DataFrame | |
| End-to-end examples | MTA Subway Data | Access real-time New York City transit data |
| Seismic Data with obspy | Analyze seismic waveforms and compare with batch processing methods | |
| Wikipedia Updates and Edits | Monitor live updates to all Wikimedia sites | |
| World Earthquake Dashboard | Display recent earthquakes on a live-updating world map | |
| Just for fun! | NAND Computer |
Understand csp.node & csp.graph by connecting NAND logic gates
|
| Developer Tools | Profiling csp code |
Profile a CSP Graph, view static attributes and runtime performance |
examples
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
parent directory.. | ||||