Exemplo n.º 1
0
def test_plot_profit(default_conf, mocker, testdatadir, caplog):
    default_conf['trade_source'] = 'file'
    default_conf['datadir'] = testdatadir
    default_conf[
        'exportfilename'] = testdatadir / 'backtest-result_test_nofile.json'
    default_conf['pairs'] = ['ETH/BTC', 'LTC/BTC']

    profit_mock = MagicMock()
    store_mock = MagicMock()
    mocker.patch.multiple("freqtrade.plot.plotting",
                          generate_profit_graph=profit_mock,
                          store_plot_file=store_mock)
    with pytest.raises(
            OperationalException,
            match=r"No trades found, cannot generate Profit-plot.*"):
        plot_profit(default_conf)

    default_conf['exportfilename'] = testdatadir / "backtest-result_test.json"

    plot_profit(default_conf)

    # Plot-profit generates one combined plot
    assert profit_mock.call_count == 1
    assert store_mock.call_count == 1

    assert profit_mock.call_args_list[0][0][0] == default_conf['pairs']
    assert store_mock.call_args_list[0][1]['auto_open'] is True
Exemplo n.º 2
0
def start_plot_profit(args: Dict[str, Any]) -> None:
    """
    Entrypoint for plot_profit
    """
    # Import here to avoid errors if plot-dependencies are not installed.
    from freqtrade.plot.plotting import plot_profit
    validate_plot_args(args)
    config = setup_utils_configuration(args, RunMode.PLOT)

    plot_profit(config)
Exemplo n.º 3
0
def test_plot_profit(default_conf, mocker, testdatadir, caplog):
    default_conf['trade_source'] = 'file'
    default_conf["datadir"] = testdatadir
    default_conf['exportfilename'] = testdatadir / "backtest-result_test.json"
    default_conf['pairs'] = ["ETH/BTC", "LTC/BTC"]

    profit_mock = MagicMock()
    store_mock = MagicMock()
    mocker.patch.multiple("freqtrade.plot.plotting",
                          generate_profit_graph=profit_mock,
                          store_plot_file=store_mock)
    plot_profit(default_conf)

    # Plot-profit generates one combined plot
    assert profit_mock.call_count == 1
    assert store_mock.call_count == 1

    assert profit_mock.call_args_list[0][0][0] == default_conf['pairs']
    assert store_mock.call_args_list[0][1]['auto_open'] is True