【问题标题】:How to get FOREX data live-streaming in python?如何在 python 中实时获取外汇数据?
【发布时间】:2017-05-29 13:42:37
【问题描述】:

我使用此github code 获取外汇数据实时流式传输,但它在所有列中产生了 NAN 值。

谁能帮我在 python 中获取实时外汇数据?

您的帮助将不胜感激,在此先感谢

【问题讨论】:

    标签: python live-streaming forex


    【解决方案1】:

    你能发布你的输出/错误吗?

    是不是像下面这样?

               Date  Bid  Bid_point  Ask  Ask_point  High  Low  Open
    Symbol
    not authorized  NaT  NaN        NaN  NaN        NaN   NaN  NaN   NaN
    

    如果是,
    您是否将用户名密码传递给脚本?

    这是该脚本提供的帮助:

    python3 truefx_api.py --help
    Usage: run.py [OPTIONS]
    
    Options:
    --symbols TEXT                  Symbols list (separated with ','
    --username TEXT                 TrueFX username
    --password TEXT                 TrueFX password
    --force-unregistered / --no-force-unregistered
                                    Force unregistered
    --expire_after TEXT             Cache expiration (-1: no cache, 0: no
                                    expiration, 00:15:00.0: expiration delay)
    --help                          Show this message and exit.
    

    更新:
    回应 OP 的最新评论:

    引用的文档http://www.truefx.com/dev/data/TrueFX_MarketDataWebAPI_DeveloperGuide.pdf 包含一个示例 用户名和密码。 您不能使用这些。您需要注册并获得真实的用户名和密码。

    【讨论】:

    • 我运行这个命令......我和你一样......即使我给了一个用户名和密码也不起作用,这在 trueFx 文档中显示。
    • 它现在工作正常。但它带有 0.2 个十进制值(1.23),就像这样。我想得到 5 位十进制值 (1.23456) 我们可以这样吗??
    【解决方案2】:

    第一步:

    联系 API 提供商(在这种情况下为 TrueFX)

    与他们签订 API 使用合同(适用条款和条件)。

    结果 [1]:您将收到有效的用户凭据供您使用
    {
    USERNAME: <_a_unique_your_username_contracted_with_TrueFX_>,
    PASSWORD: <_a_unique_your_password_contracted_with_TrueFX_>
    }


    下一个2号:

    收到使用他们 API 的“密钥”后,您的 CLI 启动可能会像这样开始:

    python3 truefx_api.py --symbols EUR/USD --username <_a_unique_your_username_contracted_with_TrueFX_> --password <_a_unique_your_password_contracted_with_TrueFX_>
    

    结果 [2] :您将收到 API 服务,前提是
    a)您已正确提供在第 1 步中获得的凭据,1: 1,在命令行上没有一个拼写错误

    b)您已正确设置所谓的环境变量TRUEFX_USERNAME@987654327 @ (请查阅您的系统文档或联系系统管理员,以防此类设置受限于本地主机管理员权限的所有者)


    下一个 3 号:

    从现在开始,
    a)您可以享受签约的 API 服务,

    b)您可能需要申请 API - 提供者端的服务故障(TrueFX,在这种情况下)出现一些问题,以便修复此类 API 服务故障并采取适当的补救措施,然后您返回 a)

    结果 [3] :阳光明媚,世界按预期运行。

    【讨论】:

      【解决方案3】:

      免责声明:我是 Polygon.io 的开发人员之一

      100% 免费外汇/货币交易/报价流。我们使用 NATS.io 作为消息代理,它拥有 Python 和几乎所有其他语言的客户端。

      • 我们的延迟通常小于 200 毫秒
      • 价格精确到小数点后 5 位
      • 54 跟踪外汇对

      这里是 Python 3.x 的代码示例:https://github.com/Polygon-io/client-examples/tree/master/python

      Polygon.io - Free real time forex stream

      我们还有用于当前/历史价格的 RESTful API。

      【讨论】:

      • 这不是免费的
      • 它不是免费的,它是每月 50 美元 wtf :(
      • 对于个人量化来说太贵了
      【解决方案4】:

      剧本由内马蒂洛·奥奇洛夫编写。 在https://colab.research.google.com/运行脚本

      #! pip install yfinance
      #! pip install fbprophet
      
      import yfinance
      import pandas as pd
      import datetime
      from fbprophet import Prophet
      
      
      data = yfinance.download ('BTC-USD', strat = '2020-12-01', # machine learning period
                                end = datetime.datetime.today (), interval = '1d') # period interval unit (day)
      df = pd.DataFrame ()
      df ['y'] = data ['Close']
      df ['ds'] = data.index
      model = Prophet (daily_seasonality = True)
      model.fit (df)
      future = model.make_future_dataframe (periods = 730) # future prediction period
      result = model.predict (future)
      model.plot (result)
      

      从这个脚本中,您可以获得股票、金属、货币对和加密货币的历史并预测它们的未来。

      如果你是编程新手,这个视频将帮助你运行脚本https://youtu.be/qTDn149P9-o

      【讨论】:

        猜你喜欢
        • 2023-01-04
        • 1970-01-01
        • 2016-09-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-08-10
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多