async def METHOD_NAME(default_conf, mocker):
    default_conf['trading_mode'] = 'futures'
    default_conf['margin_mode'] = 'isolated'
    api_mock = MagicMock()
    api_mock.fetch_funding_rate_history = get_mock_coro(return_value=[])
    exchange = get_patched_exchange(mocker, default_conf, id='bybit', api_mock=api_mock)
    limit = 200
    # Test fetch_funding_rate_history (current data)
    await exchange._fetch_funding_rate_history(
        pair='BTC/USDT:USDT',
        timeframe='4h',
        limit=limit,
        )
    assert api_mock.fetch_funding_rate_history.call_count == 1
    assert api_mock.fetch_funding_rate_history.call_args_list[0][0][0] == 'BTC/USDT:USDT'
    kwargs = api_mock.fetch_funding_rate_history.call_args_list[0][1]
    assert kwargs['since'] is None
    api_mock.fetch_funding_rate_history.reset_mock()
    since_ms = 1610000000000
    # Test fetch_funding_rate_history (current data)
    await exchange._fetch_funding_rate_history(
        pair='BTC/USDT:USDT',
        timeframe='4h',
        limit=limit,
        since_ms=since_ms,
        )
    assert api_mock.fetch_funding_rate_history.call_count == 1
    assert api_mock.fetch_funding_rate_history.call_args_list[0][0][0] == 'BTC/USDT:USDT'
    kwargs = api_mock.fetch_funding_rate_history.call_args_list[0][1]
    assert kwargs['since'] == since_ms