首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >交易观点对宾斯DMI计算?

交易观点对宾斯DMI计算?
EN

Stack Overflow用户
提问于 2020-06-28 15:28:28
回答 1查看 775关注 0票数 1

我试着用Binance的API计算5米间隔的方向运动指示器。我使用288个“高”、“打开”和“关闭”的值,计算真实范围,然后用一个有14个值的窗口的简单移动平均范围(ATR)计算。我使用了同样简单的移动平均技术来计算+DI、-DI和ADX,但是我得到的值与DMI的交易视图中显示的值不匹配。我也尝试使用指数移动平均,ATR,+Di和-DI,但我仍然没有得到匹配的值。我也注意到宾斯和贸易的DMI不匹配。你知道交易视图的DMI使用哪种平滑技术吗?

代码语言:javascript
复制
$url = 'https://api.binance.com/api/v3/klines?symbol=BNBBTC&interval=5m&limit=288';
$candles = file_get_contents($url);
$candles = json_decode($candles, true);

$arr_results = array();
$high = array();
$low  = array();
$close_arr = array();
$average = array();

for($i= 0; $i < sizeof($candles); $i++){
    array_push($high, $candles[$i][2]);
    array_push($low, $candles[$i][3]);
    array_push($close_arr, $candles[$i][4]);
    $av = ($candles[$i][2] + $candles[$i][3]) /2;
    array_push($average, $av);
}

$plus_di  = array_pop(trader_plus_di($high, $low, $close_arr, 14));
$minus_di = array_pop(trader_minus_di($high, $low, $close_arr, 14));
$adx      = array_pop(trader_adx ($high, $low, $close_arr, 14));
EN

回答 1

Stack Overflow用户

发布于 2022-08-10 00:58:39

要计算ATR,需要按照以下方法平滑TR (True范围):

以平滑周期nbCandles (通常为nbCandles=14蜡烛)为例,然后:

  • 第一个ATR值: ATR(1) = Sum{ TR (1 -> nbCandles)} (即您将TR的nbCandles第一个值之和以得到ATR的第一个值)-如果nbCandles = 14,那么您的第一个ATR值将是TR的前14个值的之和。
  • 然后,对于以下ATR值,使用以下公式:

ATR(i) = ATR(i-1) - ATR(i-1)/nbCandles + TR(i)

下面是一个例子(基于30 1分钟蜡烛的历史记录和14作为平滑因子(用于平滑的蜡烛数目)):

Binance BTCUSDT 1m

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62624596

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档