def test_02_MonteCarlo(self):
        """
        Varying the time step size
        """
        Asset = 100.0
        Strike = 100.0
        InterestRate = 0.05
        Volatility = 0.2
        Expiration = 1.0
        NumberAssetStep = 100
        TimeStep = Expiration / NumberAssetStep
        NumbreOfSimulation = 10000

        listOfValuesList = []

        for i in range(0, 10):
            """
            Price with Black and Scholes and Monte Carlo and print the differences
            """
            BS = BlackScholes(Asset, Strike, InterestRate, Volatility,
                              Expiration)
            BS.price()

            MC = MonteCarlo(Asset, Strike, InterestRate, Volatility,
                            Expiration, TimeStep, NumberAssetStep,
                            NumbreOfSimulation)
            MC.price()

            err = BS.getPrice() - MC.getPrice()
            self.assertGreater(BS.getPrice(), 0.0)

            valuesList = [
                Asset, Strike, InterestRate, Volatility, Expiration, TimeStep,
                NumberAssetStep, NumbreOfSimulation,
                BS.getPrice(),
                MC.getPrice(), err,
                math.fabs(err / BS.getPrice())
            ]

            listOfValuesList.append(valuesList)

            NumberAssetStep += 100
            TimeStep = Expiration / NumberAssetStep

        headerList = [
            'Asset', 'Strike', 'IntRate', 'Vol', 'Expiration', 'TimeStep',
            'NumberAssetStep', 'NumbreOfSimulation', 'BSPrice', 'MCPrice',
            'ErrorWithBS', 'ErrWithBSPer'
        ]

        writeToFile("binaryCallMCPriceTest2.csv", headerList)

        for valuesList in listOfValuesList:
            writeToFile("binaryCallMCPriceTest2.csv", valuesList)