nilesh.parmar3358
nilesh.parmar3358's avatar

Info

Username:nilesh.parmar3358
Name:nilesh.parmar3358
Member since: 19 Jan 2023

About

None

Signature

None
Notification Publishing copyrighted material is strictly prohibited. If you believe there is copyrighted material in this section you may use the Copyright Infringement Notification form to submit a claim.

No uploaded.

Warning! Executing cBots downloaded from this section may result in loss of funds. Use them at your own risk.
moving average
  1
  0
  150
free  19 Jan 2023
from datetime import datetime import backtrader as bt # Create a subclass of Strategy to define the indicators and logic class SmaCross(bt.Strategy):     # list of parameters which are configurable for the strategy     params = dict(         pfast=10,  # period for the fast moving average         pslow=30   # period for the slow moving average     )     def init(self):         sma1 = bt.ind.SMA(period=self.p.pfast)  # fast moving average         sma2 = bt.ind.SMA(period=self.p.pslow)  # slow moving average         self.crossover = bt.ind.CrossOver(sma1, sma2)  # crossover signal     def next(self):         if not self.position:  # not in the market             if self.crossover > 0:  # if fast crosses slow to the upside                 self.buy()  # enter long         elif self.crossover < 0:  # in the market & cross to the downside             self.close()  # close long position cerebro = bt.Cerebro()  # create a "Cerebro" engine instance # Create a data feed data = bt.feeds.YahooFinanceData(dataname='MSFT',                                  fromdate=datetime(2011, 1, 1),                                  todate=datetime(2012, 12, 31)) cerebro.adddata(data)  # Add the data feed cerebro.addstrategy(SmaCross)  # Add the trading strategy cerebro.run()  # run it all cerebro.plot()  # and plot it with a single command