Hi

So I'm trying to write an Algorythm to trade a list of stocks.  Unfortuantely I'm failing to even read in the strocks.  I can't load a backtest as it fails before completing.  Below is my code

  1. from AlgorithmImports import *
  2. import datetime
  3. from io import StringIO
  4. #import os
  5. import pandas as pd
  6. import traceback
  7. #import typing
  8. #import QuantConnect
  9. #import requests
  10. #import operator
  11. #import math
  12. #from SmartRollingWindow import *
  13. #endregion
  14. class OptimizedTransdimensionalReplicator(QCAlgorithm):
  15. def Initialize(self):
  16. self.SetStartDate(2020, 10, 1) # Set Start Date
  17. self.SetCash(100000) # Set Strategy Cash
  18. #tickers = ["AAPL", "MSFT", "TSLA"]
  19. try:
  20. data = StringIO(self.Download("https://www.dropbox.com/s/r1jwm0bhqsb4c02/Tips_20220304.csv?dl=0"))
  21. self.df1 = pd.read_csv(data)
  22. except Exception:
  23. ex = traceback.format_exc
  24. print(ex)
  25. tickers = SelectSymbols()
  26. # self.symbols = [Symbol.Create(ticker, SecurityType.Equity, Market.USA)]
  27. self.SetUniverseSelection(FineFundamentalUniverseSelectionModel(self.CoarseSelectionFunction, self.FineSelectionFunction))
  28. self.UniverseSettings.Resolution = Resolution.Daily
  29. def SelectSymbols(self):
  30. symbols = []
  31. # self.df2 = self.df1.groupby(['Symbol']).count()
  32. # for i in self.df2.index:
  33. # print(df2['Symbol'][i])
  34. # symbols.append(df2['Symbol'][i])
  35. # return symbols
  36. def func(self,x):
  37. return self.Securities[x].Fundamentals.ValuationRatios.NormalizedPERatio
  38. def OnData(self, data):
  39. selected = None
  40. def CoarseSelectionFunction(self, coarse):
  41. return self.symbols
  42. def FineSelectionFunction(self, fine):
  43. return self.symbols
+ Expand

The Error message I get is 

During the algorithm initialization, the following exception has occurred: ParserError : Error tokenizing data. C error: Expected 1 fields in line 2, saw 2

 at pandas._libs.parsers.raise_parser_error
 File "parsers.pyx" in parsers.pyx: line 2131
ParserError : Error tokenizing data. C error: Expected 1 fields in line 3, saw 2

Author

Newoptionz

March 2022