Hello All!
After a mammoth 11 months of engineering, we've finished the deployment of L1 data to production. It has been in backtesting for approximately 7 months, but we encountered some pretty difficult engineering challenges with getting this through to live-trading for the community at this scale.
L1 equity data is about 10x the trade-only live feed; multiplied by the sheer number of community strategies we hit bandwidth and physical limitations of hardware we were operating. This required new racks of equipment and physically upgrading switches and routers to handle the new traffic. We had some brand new engineering leaps on the distribution of the data. Fun parts of the project included:
- Upgrading the live racks to 10G fiber internet connections.
- Hitting the limits of RAM bandwidth and having to optimize the code to shave off the milliseconds.
- Tracking and setting the perfect exchange opening-auction market ticks to all our aggregated bars.
This upgrade brings:
- Instant universe selection on deploying your algorithm. You no longer need to wait for the next day to do a universe selection. This is a change of behavior!
- Spread in live trading. New alphas and paper trading fill will be filled on the quote spread just in backtesting.
- New live servers; more modern CPUs, RAM, and more efficient live code giving meaning you get more of your allocated node capacity.
- New crypto 6+ character ticker changes. Crypto users will need to swap a few tickers in their backtesting and live trading, effective immediately. (ALO -> ALGO, NIO -> ANIO, BSV -> BCHSV, DSH -> DASH, IOT -> IOTA, LIK -> LINK, LOM -> LOOM, MNA -> MANA, GOT -> PKGO, QTM -> QTUM, UST -> USDT, YYW -> YOYOW)
One thing to note -- previously even if you subscribed to minute data, your algorithm charts would update every second. We had to drop this functionality for efficiency but now your chart will update at least every minute even with daily data for your algorithms. We're fairly confident the technology is stable as it has been deployed for more than 2 months to hundreds of alphas working out edge cases and issues. If you have issues please let us know via a support ticket. We're watching this very closely over the next few days.
Best
Team @ QuantConnect
Tristan F
Great work QC team! We appreciate your continued commitment and support to the open-source quantitative investment community.
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.
Laurent Crouzet
Great news! That is a major milestone for live results of Alpha Streams!
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.
Emilio Freire
Fantastic news! Big THANK YOU to the team for all the hard work!
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.
Flame
Amazing news! Thank you very much team! Does this mean we will be able to get live CBOE index prices?
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.
Spacetime
It is a remarkable achievement indeed.
I appreciate the team's time and efforts given to this project.
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.
Jared Broad
Flame - yes give us the rest of the week for testing, but by early next week, we should be able to support all alternative data sources in live trading.
Thanks all for your support and patience =)
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.
Charles Naccio
Another reminder of why you don't want to build your own stack :-)
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.
Hector Barrio
Nice improvements, the instant universe selection brings and improvement in the quality of life. Is it a possibility that the changes have knocked out the universes in live trading though? I was expecting a new universe on friday and nothing came through, I have restarted the algorithm right now, middle of trading day, and it has resolved the universe inmediately.
Could the contents of the active universe be added in the bottom panel of live trading (where holdings, orders, insights...)? Similar to the holdings and all holdings panels. It could save some logging effort.
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.
Erol Aspromatis
Thanks for making these investments in data and hardware to enable us to build better algorithms and compete more effectively as individual traders.
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.
Jared Broad
Hector Barrio re: Universe on Charts. Nice idea, we're pretty swamped for the next couple of weeks with optimization but we should have some bandwidth in December to sketch it up or at least address the underlying question of "universe constituents".
The universes are quite isolated from this technology and it was only deployed/touched Monday; if you have other issues please submit a support ticket for that live deployment we can look into it there. Keep in mind Friday's universe arrives Saturday morning.
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.
Ritaelyn
Great work! Does the L1 data include ETF quotes or is it just stocks for the time being?
If it doesn't include L1 for ETFs, are there any plans to add such data? If you do have ETF L1 data, would you also be able to add the iNAV value (the Indicative Value that is updated every 15 seconds and diseminated of an ETF's current NAV.) I would really look forward to this data next. :)
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.
Derek Melchin
Hi Ritaelyn,
Yes, L1 data includes ETFs.
We've created a GitHub Issue to have the INAV data source added. Track our progress here.
Best,
Derek Melchin
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.
Ritaelyn
Sweet! Thanks Derek!
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.
LukeI
I couldn't get python working on desktop lean either, It wouldn't recognize that I had python2.7 installedbut I followed all the directions I could find. I wonder if they could do a quick video showing how to start from scratch and run a python backtest on desktop lean like the video they have for C#
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.
Jared Broad
Can you please paste the an error message? From the screen shots I am guessing its because you have installed anaconda-python; I think it needs plain python?
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.
Alexandre Catarino
Could you please give us more details?
What is the runtime error message?
made a related question today:
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.
LukeI
I think I found my problem, I haven't figured out how to fix it yet, although I'm close. I keep getting this message:
I figured out that I didn't follow the python readme.md as close as I thought. First I created a system path variable to my python 2.7 install location because I had forgotten to do that. Then I read this instruction closer:
Rename Leanpacka≥sQuantCo∩ect.pytho∩et.versionbuildPython.Runtime.w∈ to Leanpacka≥sQuantCo∩ect.pytho∩et.versionlibPython.Runtime.dll. I didn't realise that by rename it also meant that I had to move it to the lib folder. Then I made sure that python was working in visual studio by reading some stuff here and making python 2.7 the default python environment. I tested the python interactive prompt in visual studio to confirm that it worked.
THEN I redownloaded and used a fresh version of lean. Still got the error.
Now I did a little more digging into what I think is the true cause:
Unable to find an entry point named 'PyUnicodeUCS4_FromUnicode' in DLL 'python27'.
I just checked and my python is UCS-2. I just installed it from the python website so I had no idea that I had to specify for it to install encoded a certain way. But I'm going to try and resintall python 2.7with --enable-unicode=ucs4 somewhow and see if that works. I will report back later.
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.
LukeI
Hmm nope, can't get it
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.
Jared Broad
and the windows dll is needed for it. Alex will reply in a few hours when
he's awake =)
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.
LukeI
OK so I got it working. I uninstalled everything, including visual studio and python and reinstalled it. I also made SURE to copy over the .dll to the right spot and deleted the DLL that was there initially. Part of the reason I think it was giving me problems was because I am on 64bit windows and I had installed multiple versions of python installed, for both 64bit and 32bit. This time I let Visual basic install python 2.7 64 bit during the installation instead of doing it myself. It installed it to a folder at C:\Python27amd64. I had to point the path in my system to C:\Python27amd64, not C:\Python27 like the readme says (which is the 32bit version by default).
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.
Chris Alteras
Hi ,
thanks you everybody for your help.
logs and screenshot : https://groups.google.com/forum/#!topic/lean-engine/mQeSrNsZ6
My install: python integration option checked during VS2017 community installation.
I didn't install python 2.7 in first intention because ananconda was already install and managing packages is very easy (pandas and dependencies in one click!)
PS: I have also an another problem with environment": "backtesting-desktop" that I have fixed.
https://groups.google.com/forum/#!topic/lean-engine/vnE-tXRMKo0
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.
Chris Alteras
I haven't tested my python2.7 anaconda environnement VS integration (https://docs.microsoft.com/en-us/visualstudio/python/python-environments)... It could be the problem
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.
Alexandre Catarino
I am glad you made it.
Like Jared said, that runtime error tells us that you were using the wrong dll (unfortunatelly we need a dll for each OS).
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.
Jared Broad
Chris Alteras a user in the slack channel manage to get it working with Anacondas:
But i've managed to work around it by installing pythonnet : * brew install pkg-config * brew install glib --universal * brew install mono * export PKG_CONFIG_PATH=/Library/Frameworks/Mono.framework/Versions/5.2.0/lib/pkgconfig * cd /Users/sl624/anaconda/lib * ln -s /Library/Frameworks/Mono.framework/Versions/Current/lib/mono * export DYLD_LIBRARY_PATH=/Library/Frameworks/Mono.framework/Versions/Current/lib * USE_OSX_FRAMEWORKS=0 ARCHFLAGS="-arch x86_64" pip install git+https://github.com/pythonnet/pythonnet
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.
Chris Alteras
Jared: slack channel infos are for linux user (mono install and linux command like ln -s ...)
finally I did it.
My steps:
- install python x64
(don't forget path add option )
- open console (cmd) and install panda: py -2.7 -m pip install pandas
- download lean from github
- open with VS2017 , select solution, click right and select restore nuget package
- open python environment and select Python2.7 x64 (maybe not mandatory)
- follow github instruction carefully( rename .win to .dll and paste in lib folder , etc...)
- run ...
- If you want GUI: * click solution, properties, project dependencies and click on Quanconnect.Views
* in config.json : "environment": "backtesting-desktop"
* AND replace in config.json ..../Debug/QuantConnect.Views.exe by .../Release/QuantConnect.Views.exe
you should have:
"desktop-http-port": "1234",
"desktop-exe": "../../../UserInterface/bin/Release/QuantConnect.Views.exe"
- don't forget user id ( see quantconnect , MyAccount)
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.
Lucas
Hi Guys, After reading all above I still cant get it. Could anyone provide some info on what I am doing wrong here? The following text is coming up red when i run the lean launcher
20170904 13:11:35 Error:: Loader.TryCreatePythonAlgorithm(): System.DllNotFoundException: Unable to load DLL 'python27': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
at Python.Runtime.Runtime.Py_IsInitialized()
at Python.Runtime.Runtime.Initialize()
at Python.Runtime.PythonEngine.Initialize(IEnumerable`1 args, Boolean setSysArgv)
at Python.Runtime.PythonEngine.Initialize()
at QuantConnect.AlgorithmFactory.Loader.TryCreatePythonAlgorithm(String assemblyPath, IAlgorithm& algorithmInstance, String& errorMessage) in C:\QC_lean\Lean-master\AlgorithmFactory\Loader.cs:line 164
20170904 13:11:36 Error:: Engine.Run(): System.Exception: Loader.TryCreatePythonAlgorithm(): Unable to import python module ../../../Algorithm.Python/BasicTemplateAlgorithm.py. Unable to load DLL 'python27': The specified module could not be found. (Exception from HRESULT: 0x8007007E): try re-building algorithm.
at QuantConnect.Lean.Engine.Setup.ConsoleSetupHandler.CreateAlgorithmInstance(AlgorithmNodePacket algorithmNodePacket, String assemblyPath) in C:\QC_lean\Lean-master\Engine\Setup\ConsoleSetupHandler.cs:line 94
at QuantConnect.Lean.Engine.Engine.Run(AlgorithmNodePacket job, AlgorithmManager manager, String assemblyPath) in C:\QC_lean\Lean-master\Engine\Engine.cs:line 111
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.
Chris Alteras
Lucas: check in c:\python27 if you have python27.dll
If not try to copy C:\Windows\System32\ python27.dll (or C:\Windows\SysWOW64) into c:\python27
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.
Lucas
Chris you are a champion. That fixed that problem, cheers!
Now I am up to the error (this pops up in the gui, but there is red in the cmd too)
2017-09-05T07:27:12.1211034Z Error Algorithm.Initialize() Error: Loader.TryCreatePythonAlgorithm(): Unable to import python module ../../../Algorithm.Python/BasicTemplateAlgorithm.py. An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B): try re-building algorithm. Stack Trace: at QuantConnect.Lean.Engine.Setup.ConsoleSetupHandler.CreateAlgorithmInstance(AlgorithmNodePacket algorithmNodePacket, String assemblyPath) in C:\QC_lean\Lean-master\Engine\Setup\ConsoleSetupHandler.cs:line 94
at QuantConnect.Lean.Engine.Engine.Run(AlgorithmNodePacket job, AlgorithmManager manager, String assemblyPath) in C:\QC_lean\Lean-master\Engine\Engine.cs:line 111
at QuantConnect.Lean.Engine.Setup.ConsoleSetupHandler.CreateAlgorithmInstance(AlgorithmNodePacket algorithmNodePacket, String assemblyPath) in C:\QC_lean\Lean-master\Engine\Setup\ConsoleSetupHandler.cs:line 94
at QuantConnect.Lean.Engine.Engine.Run(AlgorithmNodePacket job, AlgorithmManager manager, String assemblyPath) in C:\QC_lean\Lean-master\Engine\Engine.cs:line 111
The first few lines in my config.json looks like:
"environment": "backtesting-desktop",// "live-paper", "backtesting", "live-interactive", "live-interactive-iqfeed"
// algorithm class selector
"algorithm-type-name": "BasicTemplateAlgorithm",
// Algorithm language selector - options CSharp, FSharp, VisualBasic, Python, Java
//"algorithm-language": "CSharp",
"algorithm-language": "Python",
//Physical DLL location
//"algorithm-location": "QuantConnect.Algorithm.CSharp.dll",
"algorithm-location": "../../../Algorithm.Python/BasicTemplateAlgorithm.py",
//"algorithm-location": "QuantConnect.Algorithm.FSharp.dll",
//"algorithm-location": "QuantConnect.Algorithm.VisualBasic.dll",
//"algorithm-location": "QuantConnect.Algorithm.Java.dll",
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.
Chris Alteras
sorry lucas, i was quite busy these day.
step1:check project depencies: select solution level, click right, select properties
check if Views is included
step2: correct Debug with Release in config.json (read carefully my previous post)
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.
Lucas
Hi Chris, Thanks for getting back to me.
I started on a fresh pc. Running win 10 with MSVS 2017 community and python x64 2.7 that comes preinstalled with visual studio. I am still failing dismally.
The error is the same as the original post: Unable to import python module ../../../Algorithm.Python/BasicTemplateAlgorithm.py. Unable to find an entry point named 'PyUnicodeUCS4_FromUnicode' in DLL 'python27'.
Attached is a screenshot of my path location
You mentioned python.dll in syswow or system32. I have one python.dll in each (not sure if that even matters, I have tried C:\Python27amd64\python.dll (with both and with none, I still get the same error)
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.
Jared Broad
Lucas that error probably means you've copied the wrong DLL in place. UCS2 is the mac/linux version of the DLL -- UCS4 is the window one which it needs too work. I guess you didn't *precisely* copy the file: (note the paths)
Rename Lean\packages\QuantConnect.pythonnet._version_\build\Python.Runtime.win to Lean\packages\QuantConnect.pythonnet._version_\lib\Python.Runtime.dll
The version is 1.0.4.4 at the moment:
del Lean\packages\QuantConnect.pythonnet.1.0.4.4\lib\Python.Runtime.dll copy Lean\packages\QuantConnect.pythonnet.1.0.4.4\build\Python.Runtime.win Lean\packages\QuantConnect.pythonnet.1.0.4.4\lib\Python.Runtime.dll
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.
Lucas
I am pretty sure I have done that part correctly (I have read the instructions and attempted about 10 installs now).
Maybe I am not installing python properly?
.
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.
Jared Broad
Sorry Lucas Alex tells me he can't get it going on Windows either (fine on Mac/Linux). We'll figure it out it today and update the install readme.
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.
To unlock posting to the community forums please complete at least 30% of Boot Camp.
You can continue your Boot Camp training progress from the terminal. We hope to see you in the community soon!