Signal template
Signal templates allows users to create reusable signal expressions using lambda functions. The lambda expression can take any number of arguments and must return a Signal.
Examples:
Create a signal with label add_one
that adds 1 to any signal with the expression:
lambda x: x + 1
Use the template to add 1 to close_price:
add_one(close_price)
Create a signal with label filter_signal
that filters a signal to only return data points within
a certain range with the expression:
lambda s, min=0, max=100: df_function(lambda df: df.where(df > min).where(df < max))(s)
Use the template to only return close_price between 50 and 100:
filter_signal(close_price, min=50)