16af3ae9fc
This commit updates all example files to use `assert_eq!` for verifying output, replacing the previous `Output:` comments. This change makes the examples more robust and self-testing. The benchmark results in some examples have also been slightly adjusted, reflecting minor performance variations after the refactoring. Additionally, a runtime panic handling mechanism has been introduced in the VM for function calls, which improves error reporting for unexpected panics.
22 lines
646 B
Plaintext
22 lines
646 B
Plaintext
;; Skip: work in progress — requires external RTL module (SMA not yet implemented)
|
|
#use rtl
|
|
|
|
(do
|
|
(def src (create-random-ohlc 42 200))
|
|
|
|
(macro printx [s] `(fn [x] (print ~s x)))
|
|
|
|
(pipe src print)
|
|
(pipe [(pipe [(.close src)] (SMA 20))] (printx "sma20="))
|
|
(pipe [(pipe [(.close src)] (SMA 5))] (printx "sma5="))
|
|
(pipe [(pipe [(.close src)] (SMA 100))] (printx "sma100="))
|
|
|
|
(macro cache [lookback type src] `(do (def data (series ~lookback ~type)) (pipe [~src] (fn [s] (do (push data s)))) data))
|
|
|
|
; (def bars (series 20 :float))
|
|
; (pipe [src] (fn [s] (do (push bars (.close s)))))
|
|
|
|
(cache 20 :float src)
|
|
|
|
)
|