code: def test_bootstrap_cone_against_linear_cone_normal_returns(self):
      random_seed = 100
      np.random.seed(random_seed)
      days_forward = 200
      cone_stdevs = (1.0, 1.5, 2.0)
      mu = 0.005
      sigma = 0.002
      rets = pd.Series(np.random.normal(mu, sigma, 10000))
  
      midline = np.cumprod(1 + (rets.mean() * np.ones(days_forward)))
      stdev = (
          rets.std() * midline * np.sqrt(np.arange(days_forward) + 1)
      )
  
      normal_cone = pd.DataFrame(columns=pd.Float64Index([]))
      for s in cone_stdevs:
          normal_cone[s] = midline + s * stdev
          normal_cone[-s] = midline - s * stdev
  
      bootstrap_cone = timeseries.forecast_cone_bootstrap(
          rets,
          days_forward,
          cone_stdevs,
          starting_value=1,
          random_seed=random_seed,
          num_samples=10000,
      )
  
      for col, vals in bootstrap_cone.iteritems():
          expected = normal_cone[col].values
          assert_allclose(vals.values, expected, rtol=0.005)
  
imports: from __future__ import division
  import os
  from unittest import TestCase
  from nose_parameterized import parameterized
  from numpy.testing import assert_allclose, assert_almost_equal
  from pandas.util.testing import assert_series_equal
  import numpy
  import pandas
  from ..None import timeseries
  from pyfolio.utils import to_utc, to_series
  import gzip
label_desc: Use image node_id 1 for calling the TestCone obj's underlying member method code with example usage: obj.test_bootstrap_cone_against_linear_cone_normal_returns() without return types