Crypto Trading Community Collaboration Algo

Hi Folks,

In the spirit of Opensource and the Quantconnect community, I am posting the current version of WarmCryptoCrossover v2 (Py) in the hopes that we can collaborate and mutually benefit from any improvements made. Please post Backtests in this thread with a description of changes. The current version shows a 2,325.06 % return on ETHUSD since the start of 2017 at Hour resolution. I do not recommend Live Trading in the current state.

Improvements needed:

  • Warmup functional in Backtest, but not in Live or Paper Trading; why?
  • Utilize ADX or ADXR to determine Average direction of market to adjust strategy.
Update Backtest

Attempt at adding email notifications. Only for Live environment. Failing backtest with errors.


  1. Commented out email Notify until error is resolved.
  2. Added ADX indicator at daily resolution.
  3. ADX is not yet implemented into strategy.

Algo attached, clone to view code.


Removed ADX indicator. Added MOM, RSI, ULTOSC indicators. These seem more suited as secondary modifiers to the EMA Crossover strategy. New indicators are not directly integrated into the strategy yet, just graphed.


This is really cool stuff. I really appreciate you helping the community out as this has helped me with my own trading algo. 


Sure thing, I haven't been able to do much recently as I have been exploring altcoin exchange APIs, but I will be back here in a bit. Most of this is just from reading the documenation and asking lots of questions.

What part helped you?



I have added a orderhold parameter so that only on a cross between fast and medium I step into the market. If not after a warmup you might immediately trade instead of waiting your turning signal.



Im getting a random exeption thrown after trade execution 


Runtime Error: Python.Runtime.PythonException: TypeError : object is not callable at Python.Runtime.PyObject.Invoke (Python.Runtime.PyTuple args, Python.Runtime.PyDict kw) [0x00033] in <59c711440fed482b8e57b026917e4706>:0 at Python.Runtime.PyObject.InvokeMethod (System.String name, Python.Runtime.PyTuple args, Python.Runtime.PyDict kw) [0x00007] in <59c711440fed482b8e57b026917e4706>:0 at Python.Runtime.PyObject.TryInvokeMember (System.Dynamic.InvokeMemberBinder binder, System.Object[] args, System.Object& result) [0x0003e] in <59c711440fed482b8e57b026917e4706>:0 at (wrapper dynamic-method) System.Object:CallSite.Target (System.Runtime.CompilerServices.Closure,System.Runtime.CompilerServices.CallSite,object,QuantConnect.Data.Slice) at QuantConnect.AlgorithmFactory.Python.Wrappers.AlgorithmPythonWrapper.OnData (QuantConnect.Data.Slice slice) [0x000c6] in <0992ba9d0a964ab193313a0cb70bbe2d>:0 at QuantConnect.Lean.Engine.AlgorithmManager.Run (QuantConnect.Packets.AlgorithmNodePacket job, QuantConnect.Interfaces.IAlgorithm algorithm, QuantConnect.Lean.Engine.DataFeeds.IDataFeed feed, QuantConnect.Lean.Engine.TransactionHandlers.ITransactionHandler transactions, QuantConnect.Lean.Engine.Results.IResultHandler results, QuantConnect.Lean.Engine.RealTime.IRealTimeHandler realtime, QuantConnect.Lean.Engine.Server.ILeanManager leanManager, QuantConnect.Lean.Engine.Alpha.IAlphaHandler alphas, System.Threading.CancellationToken token) [0x01258] in <4f52e60abe5a4b39864efef908e92ad2>:0 : StackTrace: [' File "../cache/", line 164, in OnData\n']


any ideas? 


Update Backtest


The material on this website is provided for informational purposes only and does not constitute an offer to sell, a solicitation to buy, or a recommendation or endorsement for any security or strategy, nor does it constitute an offer to provide investment advisory services by QuantConnect. In addition, the material offers no opinion with respect to the suitability of any security or specific investment. QuantConnect makes no guarantees as to the accuracy or completeness of the views expressed in the website. The views are subject to change, and may have become unreliable for various reasons, including changes in market conditions or economic circumstances. All investments involve risk, including loss of principal. You should consult with an investment professional before making any investment decisions.


This discussion is closed