Author Topic: 【喂价讨论】动态调整最低抵押率要求和爆仓惩罚  (Read 100534 times)

0 Members and 1 Guest are viewing this topic.

Offline binggo

  • Hero Member
  • *****
  • Posts: 1621
    • View Profile
Re: 【喂价讨论】动态调整最低抵押率要求和爆仓惩罚
« Reply #405 on: September 09, 2018, 10:01:39 am »
过多的调高喂价只不过是饮鸠止渴!!!

而且所谓的靠调高喂价来调节溢价根本无法填补本来就缺失的资金缺口。
« Last Edit: September 09, 2018, 10:06:41 am by binggo »

Online bitcrab

  • Committee member
  • Hero Member
  • *
  • Posts: 1683
    • View Profile
  • BitShares: bitcrab
  • GitHub: bitcrab
Re: 【喂价讨论】动态调整最低抵押率要求和爆仓惩罚
« Reply #406 on: September 09, 2018, 01:24:39 pm »
1. 给 i 设定上下限的做法继续不妥。

溢价回归的过程,实际上就是修正因子从p/k转移到i的过程,是反馈生效的反映。人为限制i的上限,等于让p保留在一定高度,进而也就是说让溢价/折价保留在一定高度。当然,“转移”并不一定1:1。

2. Ti 改成1的话,也就是说4小时i就达到k的水平?感觉差不多,可能稍微有点偏快/偏多而引起震荡,不过可以试试看。

3. 另外,建议把公式参数统一下,既然是PID,那么,调整参数设为Tp, Ti, Td,修正值设为 p,i,d 。
也就是说,把公式里 p 改成 Tp,然后 p = Tp*premium,最终喂价 = BTS价*(1+p+i+d),去掉k,看起来更清楚。

4. 基础值(公式里的Pdex)不该用内盘BTS/BITCNY价,而该用外盘价或者加权平均价。

------ 分割线 ------

当前数据
外盘均价 0.663
bitcny价 1.032 也就是溢价 3.2%
当前中间喂价 0.717 相对外盘价偏移 8.26%
我的最新喂价 0.745 相对中间喂价偏移 3.84%,相对外盘价偏移12.4%

bitcny溢价仍然较大,并且稳定在3%左右。
究其原因,是因为大部分见证人都是用的巨蟹的老算法,也就是不带积分因子的,没有自适应调节,所以结果相对固定,存在静差。

本来就有feed price = Pdex*min(i+k+d, 1.5, 1.2*Pf/Pdex) 这样的限制,所以当i因时间累积变得太大时,并不能发挥什么作用。而且我觉得这样的限制也是需要的。再怎么喂,也不应该让feed price > MCR*Pdex.

因为Pdex = Pmarket /(1+premium),所以用谁作基础值并没有本质区别,做下公式代换就好。我的理念是,能用内盘价的时候就用内盘价。
« Last Edit: September 09, 2018, 04:17:54 pm by bitcrab »

Online bitcrab

  • Committee member
  • Hero Member
  • *
  • Posts: 1683
    • View Profile
  • BitShares: bitcrab
  • GitHub: bitcrab
Re: 【喂价讨论】动态调整最低抵押率要求和爆仓惩罚
« Reply #407 on: September 09, 2018, 04:38:45 pm »
再更新一版,统一了参数,另外把PID参数调整间隔改为10分钟。

主要是希望能够方便观察变化,改成10分钟对pi没啥影响,可能对d有点影响,但应该也不大吧。

其实我觉得这里也许PI控制就够了?D其实作用不大?

Pdex:内盘bitCNY价格
Pf: 当前喂价
premium:溢价百分比
Premium0: 更新周期前的溢价百分比

Tp=4;Ti=6; Td=1; ##PID的几个参数,Ti=6使得当premium>2%时,i在20小时内可从0增加到最大值。

get Pdex, Pf, premium;
premium0=premium;
p=Tp*premium;
i= Pf/Pdex-p-1; ##设置初始值使得初始喂价等于当前喂价
d=0;

while True:
   
   get Pdex, Pf, premium;

   if (上次执行后计时器已过去10分钟):
         i+=premium/Ti;
         if i>0.4: ##给i设定上下限,因为有总体调整幅度的限制,i太大或太小时已经起不到什么作用,反而会延缓回调的速度
            i=0.4;
         if i<-0.3:
            i=-0.3;
         d=Td*(premium-premium0);
         premium0=premium;
           
   p=Tp*premium;
   
   if p+i+d>0:
     feed price = Pdex*min(1+p+i+d, 1.5, 1.2*Pf/Pdex) ##向上调价时,喂价不超过内盘价1.5倍,不超过当前喂价1.2倍
   else:
     feed price = Pdex*max(1+p+i+d, 0.91*Pf/Pdex)##向下调价时,喂价不得低于当前喂价0.91倍。
« Last Edit: September 09, 2018, 04:54:29 pm by bitcrab »

Online zhouxiaobao

Re: 【喂价讨论】动态调整最低抵押率要求和爆仓惩罚
« Reply #408 on: September 09, 2018, 07:53:24 pm »
蟹老板,目前喂价改革效果很好。但是我觉得要更加精确的锚定还需要理事会账户和基金的配合。理事会账户已经两个多礼拜没有注资了,这是怎么回事呀。感觉近两个月好像没有一天20万的量啊?
worker投票不足,拿不到一天20w了

两位大神能否关注一下理事会账户的事?观察了几天,好像调喂价对于防止下跌时手续费过度上涨效果很好,但是对于平时手续费的及时修复好像效果不怎么样。我想这需要理事会账户和基金的配合呀,解决3%以内的更加精确锚定的问题。现在理事会账户不能正常注资了,能否具体解释一下情况?能否想办法恢复正常啊?

Offline PTS中国

  • Sr. Member
  • ****
  • Posts: 411
    • View Profile
  • BitShares: ptschina
Re: 【喂价讨论】动态调整最低抵押率要求和爆仓惩罚
« Reply #409 on: September 10, 2018, 06:51:50 am »
再更新一版,统一了参数,另外把PID参数调整间隔改为10分钟。

主要是希望能够方便观察变化,改成10分钟对pi没啥影响,可能对d有点影响,但应该也不大吧。

其实我觉得这里也许PI控制就够了?D其实作用不大?

Pdex:内盘bitCNY价格
Pf: 当前喂价
premium:溢价百分比
Premium0: 更新周期前的溢价百分比

Tp=4;Ti=6; Td=1; ##PID的几个参数,Ti=6使得当premium>2%时,i在20小时内可从0增加到最大值。

get Pdex, Pf, premium;
premium0=premium;
p=Tp*premium;
i= Pf/Pdex-p-1; ##设置初始值使得初始喂价等于当前喂价
d=0;

while True:
   
   get Pdex, Pf, premium;

   if (上次执行后计时器已过去10分钟):
         i+=premium/Ti;
         if i>0.4: ##给i设定上下限,因为有总体调整幅度的限制,i太大或太小时已经起不到什么作用,反而会延缓回调的速度
            i=0.4;
         if i<-0.3:
            i=-0.3;
         d=Td*(premium-premium0);
         premium0=premium;
           
   p=Tp*premium;
   
   if p+i+d>0:
     feed price = Pdex*min(1+p+i+d, 1.5, 1.2*Pf/Pdex) ##向上调价时,喂价不超过内盘价1.5倍,不超过当前喂价1.2倍
   else:
     feed price = Pdex*max(1+p+i+d, 0.91*Pf/Pdex)##向下调价时,喂价不得低于当前喂价0.91倍。

蟹哥的钻研精神令人敬佩,在MSSR内,喂价负反馈浮动的速率越大自是越有利于抑制充值手续费的上涨,这点毋庸置疑;当喂价突破MSSR,即1.1倍当前喂价后,假设BTS恰处高位下来一个台阶后(牛熊转换时期),feed price 一直持续呆在1.2倍,导致后续的爆仓都累积1.1倍处,如果市场持续一段时间的单向走低(这类走势概率并不低),将会满足当前系统约定的黑天鹅触发条件,此时该如何处置?
这里提一个应急解决思路,即系统不以 feed price/MSSR 价格抛爆仓单,而以基准喂价(外盘BTS加权平均价格) 挂爆仓单,给成交的买单赠送5-10%的BTS,这样,内盘的爆仓单相对外盘来说,有折价的优势,便于尽快减少爆仓单的累积,降低黑天鹅的风险。

喂价负反馈超限,即脱离MSSR的保护后,需要其他的爆仓处理模式来合力解除黑天鹅引信。更好的模式可能是初步降MCR到1.5,喂价负反馈不超MSSR,爆仓机制维持原有的,当然,MCR调整bug需前置修复并验证无新bug。
--------

PTS中国

Offline abit

  • Committee member
  • Hero Member
  • *
  • Posts: 3956
    • View Profile
    • Steemit Blog
  • BitShares: abit
  • GitHub: abitmore
Re: 【喂价讨论】动态调整最低抵押率要求和爆仓惩罚
« Reply #410 on: September 11, 2018, 08:50:16 am »
维系锚定的两个方面:

1. 抵押: 主要支撑,足额的实际法币价值的BTS进行抵押产出,抵押+强平+强清互相联系;

2. 共识:锚定形成的另一支撑,尤其是触发黑天鹅时需要共识来维系锚定。

现在的问题是: 抵押是以喂价为基础价格,而喂价却已经偏离实际的法币价格太多,也就是说如果喂价没有超出外盘均价×1.7,虽然抵押的债仓在没有爆仓(1.75)之前按照相对最低1.1(黑天鹅触发)来说,仍旧是足额抵押的,通俗的说就是,如果喂价超出外盘均×1.7,1.75的债仓实质上按照实际法币价格来算已经开始资不抵债,也就是黑天鹅状态。

换另一种说法就是: 现在的喂价改革是准备在钢丝上跳舞,然后一步步的试探看看自己会不会掉下去,从另一方面说就是并不想靠抵押来做锚定主要支撑,而想靠共识来形成支撑,也就是。。。算了不说了。

“喂价偏离实际法币价格太多”……可是喂价不就是bts的一个算法价格吗?它偏不偏离法币价格又有什么关系呢?喂价又不需要锚定。现阶段,好像只能尝试通过拉高喂价来维持存量bitcny,不是不想通过抵押来锚定(事实上巴不得越多人抵押吧。。。),还是市场接受和认可的人群少,入场资金少,所以生拉硬拽的运行,自然会有问题。目前市场也只能是这样,急不来,一步步尝试、运行,市场的事情预测不来,纯理论上的数据分析,也要留个心眼。

现在的喂价是用算法来拉价格,   以前的喂价是脚本采集各交易所bts的实际法币价格形成的中值价格.

喂价并没有“拉”价格。

喂价只是(抵押、强平、强清、黑天鹅)规则中的一个输入项;当然,还有其他输入,包括用户借款、还款等操作也是输入。而输出,则是 bitCNY 数量及市场认可的 bitCNY 的法币价格。我们的目的是 bitCNY 价格尽量接近法币 CNY 。

目前的规则、参数、加上以前的中间值或者平均价的喂价输入方法,弊端很明显,签名已经说了。
我的观点是:强制足额抵押,对价格的支撑效果太强,是导致溢价的一个因素。所以现在的改革方向是适当放宽。

改革方向有很多:改规则、改参数(理事会调节)、改输入(见证人调节喂价)。(这里不讨论拉盘或者宣传推广等方法)

其中,改规则是最慢的,因为涉及到硬分叉,实施周期需要半年到一年;当出现问题的话,纠正也最慢。当然我并不是说放弃这个方向。如果讨论出合适方案,完全可以推行。

改参数,需要进行分析(数据统计)、决策(决定改到多少)、执行(发起提案和投票),实施周期也不短,并且数值固化,出现偏差后反馈调整也相对较慢。

改输入,则灵活很多。见证人几分钟一次喂价,如果调整算法合理,很快就能达到纠偏效果。特别的,如果同时进行参数调整和规则调整,负反馈算法也可以有效适应调整后的规则和参数。

除了价格外,MCR、MSSR也是输入,也可以调节,但MCR调节存在BUG所以现阶段不能随便调,所以才变相的用调整价格的方法。而MSSR影响风险释放,后面应该也需要调,但是要一步步来。
BTS account: abit
BTS committee member: abit
BTS witness: in.abit

Offline binggo

  • Hero Member
  • *****
  • Posts: 1621
    • View Profile
Re: 【喂价讨论】动态调整最低抵押率要求和爆仓惩罚
« Reply #411 on: September 11, 2018, 09:05:54 am »
Quote
我们的目的是 bitCNY 价格尽量接近法币 CNY 。

目的应当是防止系统强制平仓大幅度挤压内盘价格, 将爆仓曲线平滑一些.

对于bitcny价格尽量接近法币价格, 市场自己会来调节, 参数的问题应当归结于参数, 我并不反对适当的对喂价进行反馈来平抑爆仓曲线, 但是超过限制范围的调整喂价带来的风险指数大于没有调整喂价之前,市场惨淡这些问题不会暴露的太严重,因为本身市场的流动性已经在急剧萎缩,很多问题在流动性急剧萎缩的时候是暴露不出来的.


Offline abit

  • Committee member
  • Hero Member
  • *
  • Posts: 3956
    • View Profile
    • Steemit Blog
  • BitShares: abit
  • GitHub: abitmore
Re: 【喂价讨论】动态调整最低抵押率要求和爆仓惩罚
« Reply #412 on: September 11, 2018, 09:23:03 am »
Quote
我们的目的是 bitCNY 价格尽量接近法币 CNY 。

目的应当是防止系统强制平仓大幅度挤压内盘价格, 将爆仓曲线平滑一些.
我说的是最终目的,你说的是实现最终目的的中间目的或者可能是手段。

Quote

对于bitcny价格尽量接近法币价格, 市场自己会来调节, 参数的问题应当归结于参数, 我并不反对适当的对喂价进行反馈来平抑爆仓曲线, 但是超过限制范围的调整喂价带来的风险指数大于没有调整喂价之前,市场惨淡这些问题不会暴露的太严重,因为本身市场的流动性已经在急剧萎缩,很多问题在流动性急剧萎缩的时候是暴露不出来的.
市场自动调节?没改革的时候,市场调节结果是溢价20% 。

一般来说,调整输入可以影响输出结果,但要考虑边界效应边际效用递减规则,如果输入已经调到超过临界值饱和值的时候,不但没有效果,可能还会有反作用。我们当然要考虑这个,但是我觉得现在还没必要过分强调。
« Last Edit: September 11, 2018, 09:31:36 am by abit »
BTS account: abit
BTS committee member: abit
BTS witness: in.abit

Online bitcrab

  • Committee member
  • Hero Member
  • *
  • Posts: 1683
    • View Profile
  • BitShares: bitcrab
  • GitHub: bitcrab
Re: 【喂价讨论】动态调整最低抵押率要求和爆仓惩罚
« Reply #413 on: September 11, 2018, 09:31:29 am »
继续加大反馈力度的话,不排除会起到一些拉价格的作用。

比如,PID生效之后,如果溢价一直居高不下的话,积分因子一直加达到feedprice = Pdex*1.5

那相当于什么?相当于MCR被降到了1.17,相当于可用杠杆已经很大,难道不会激发交易者借款加仓的热情吗?

当然,这只是创造了更有利于多头的环境,至于结果会怎样,还要看具体的市场情绪。

但我相信,解决高溢价最终需要BTS价格上去。

当前是稳定货币很受瞩目的一个时期,BTS不能苟活,不能满足于降低点风险就够了,要有执稳定货币牛耳的雄心。

Offline abit

  • Committee member
  • Hero Member
  • *
  • Posts: 3956
    • View Profile
    • Steemit Blog
  • BitShares: abit
  • GitHub: abitmore
Re: 【喂价讨论】动态调整最低抵押率要求和爆仓惩罚
« Reply #414 on: September 11, 2018, 09:36:14 am »
继续加大反馈力度的话,不排除会起到一些拉价格的作用。

比如,PID生效之后,如果溢价一直居高不下的话,积分因子一直加达到feedprice = Pdex*1.5

那相当于什么?相当于MCR被降到了1.17,相当于可用杠杆已经很大,难道不会激发交易者借款加仓的热情吗?

当然,这只是创造了更有利于多头的环境,至于结果会怎样,还要看具体的市场情绪。

但我相信,解决高溢价最终需要BTS价格上去。

当前是稳定货币很受瞩目的一个时期,BTS不能苟活,不能满足于降低点风险就够了,要有执稳定货币牛耳的雄心。

我还是保持以前的观点:借款加仓并不能有效支撑BTS价格; bitCNY 稳定锚定有助于推广 BTS 进而拉动价格。
BTS account: abit
BTS committee member: abit
BTS witness: in.abit

Offline binggo

  • Hero Member
  • *****
  • Posts: 1621
    • View Profile
Re: 【喂价讨论】动态调整最低抵押率要求和爆仓惩罚
« Reply #415 on: September 11, 2018, 09:46:51 am »
Quote
我说的是最终目的,你说的是实现最终目的的中间目的或者可能是手段。

你说的这个最终目的, 只有在市场平稳状态下才会实现, 而在市场上升下滑阶段下基本不可能, 想要强控汇率, 基本实现不了.


110%的MSSR+当时中值喂价低于实际法币价格导致爆仓单连续性的以10%的价格抛售挤压内盘价格+市场恐慌情绪导致内外盘价差在15%左右, 入金手续费自然会高企到20%, 但是不要忘了出金手续费也在百分之十几.

因素就是上面四个因素(暂不考虑资金流失因素)

目标抵押率: 已经可以延缓大额爆仓单的挤压问题,但是现在看来还没有根治这个挤压问题;

从大额爆仓单的挤压价格问题引出两个直接原因(暂不考虑资金流失因素):

一个是喂价偏低,现在想通过算法喂价来解决喂价问题,间接性的调整MCR来延缓爆仓,我的观点还是老观点,适度的反馈可以,不能超范围,最终MCR的问题还需要其它的解决方式来解决,喂价终归还是要回归到实际法币价格;

一个是MSSR,恩...

我认为入金手续费能够在市场下滑状态下保持在5%以内,已经算是锚定的不错,追求极致的1:1锚定只存在于理想中。
« Last Edit: September 11, 2018, 09:53:07 am by binggo »

Online bitcrab

  • Committee member
  • Hero Member
  • *
  • Posts: 1683
    • View Profile
  • BitShares: bitcrab
  • GitHub: bitcrab
Re: 【喂价讨论】动态调整最低抵押率要求和爆仓惩罚
« Reply #416 on: September 11, 2018, 09:58:47 am »
我还是保持以前的观点:借款加仓并不能有效支撑BTS价格; bitCNY 稳定锚定有助于推广 BTS 进而拉动价格。

如果市场对bitCNY的需求足够强,导致喂价一直保持在比市场价高很多的水平上,那就等于在同样的安全边际条件下提升了可以借款的数额。激励了借款加仓行为。

如果市场是有效的,那么内盘的购买行为对价格的拉升作用也会传导到外盘。

这其实也正是我们想要的 - 把对智能货币的需求转化为对BTS的购买力。

不多争论这个。

Online 天籁

  • Hero Member
  • *****
  • Posts: 705
    • View Profile
Re: 【喂价讨论】动态调整最低抵押率要求和爆仓惩罚
« Reply #417 on: September 11, 2018, 11:22:54 am »
很高兴看到巨蟹高瞻远瞩、举重若轻的战略眼光和胆识,具备领袖风范,再配一个举轻若重的搭档。大事可成。

一个团队需要上智、下愚,最不需要的就是中才。

Offline binggo

  • Hero Member
  • *****
  • Posts: 1621
    • View Profile
Re: 【喂价讨论】动态调整最低抵押率要求和爆仓惩罚
« Reply #418 on: September 11, 2018, 11:38:34 am »
很高兴看到巨蟹高瞻远瞩、举重若轻的战略眼光和胆识,具备领袖风范,再配一个举轻若重的搭档。大事可成。

一个团队需要上智、下愚,最不需要的就是中才。

那这个团队基本就是残废,一个军队光靠天才的指挥官与盲从的士兵能够打什么仗?
« Last Edit: September 11, 2018, 11:40:12 am by binggo »

Online zhouxiaobao

Re: 【喂价讨论】动态调整最低抵押率要求和爆仓惩罚
« Reply #419 on: September 11, 2018, 12:04:54 pm »
观察了几天,调喂价的方法,每当手续费降到2%左右就效果不大了,降不下去了,貌似溢价小到一定程度喂价调控力度就没法加大了。能否考虑一下将调控目标定在-1%,比如目前溢价2%,我们就输入3%的溢价,也许这样能降到0左右。即使真的造成CNY有一个点的贬值,也许还是好事情。可以试试呀。