Bitcoin Forum
November 23, 2017, 02:33:25 AM *
News: Latest stable version of Bitcoin Core: 0.15.1  [Torrent].
 
   Home   Help Search Donate Login Register  
Pages: « 1 2 3 4 [5] 6 7 8 9 10 11 12 13 14 »  All
  Print  
Author Topic: TrueCoin <-- правильная монета  (Read 19183 times)
This is a self-moderated topic. If you do not want to be moderated by the person who started this topic, create a new topic.
Ukigo
Hero Member
*****
Offline Offline

Activity: 938


View Profile
March 31, 2013, 03:54:05 PM
 #81

Я уже примерно так и считаю )
при неком проценте близким к вашим константам
 из постов выше ( я лишь поделил их
 на 720 блоков в день) у меня вышло почему-то
 +0.77% эмиссии в год.
 Попробую считать целое число лет
 скажем 10 ( это ~10 мин )) ), и еще помудрить с нач. значениями ,
 чтоб проще было % прироста получать.
 
Потом сделаю др. расчет  с плавным
 исчезновением PoW и переходом на PoS.
Пока буду начислять проценты на блоки обоих
 типов одинаково.

"...Enemies are everywhere ! Angka is all rage ! Be a good soldiers, blow everything... " <-- Pol Pot (C)
Join ICO Now Coinlancer is Disrupting the Freelance marketplace!
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
Storan
Member
**
Offline Offline

Activity: 112


View Profile
March 31, 2013, 04:33:21 PM
 #82

Для симулятора наверно проще считать год как 720*365 = 262800 итераций/блоков?

А с числами может где я протупил - или блок за 10 минут посчитал, или считал для недель а потом с днями перепутал и т.п.

На код можно будет глянуть потом? Пока простые обкатки идут, вроде должен суметь "прочесть".
Ukigo
Hero Member
*****
Offline Offline

Activity: 938


View Profile
March 31, 2013, 04:45:36 PM
 #83

счас попаду в 3.14% и покажу,
потом сами адаптируете если что,
это почти псевдокод тока почистить надо.
только я пока без комиссий считаю.

"...Enemies are everywhere ! Angka is all rage ! Be a good soldiers, blow everything... " <-- Pol Pot (C)
Ukigo
Hero Member
*****
Offline Offline

Activity: 938


View Profile
March 31, 2013, 05:38:40 PM
 #84

moneysupply (M) вначале : 1.0
через год : 1.03191439...
через 2 года : 1.06484718...
----------
У вас там умножение на ноль меня пережевало Wink
вот исходник :
Code:
package main

import (
"os"
"fmt"
"strconv"
"math/rand"
)



var block = 0//block count ( for genesis block = 0 )

//var maxBlock = 262980
var maxBlock = 525960

//var percent = 0.00008601204 //
var percent = 0.00000011946

var Coin = int64(1000000)
var Cent = int64(10000)

var mplus, wMplus, sMplus float64

var wDiff = float64(1.0)
var sDiff = 0.0001

var supply = 1.0//moneysupply

var wHour = 29//PoW blocks' rate per 1 hour
var shour = 1// PoS blocks' rate per 1 hour


func main() {
wReward := 0.000001
// sReward := 0.000001
rnd := rand.New(rand.NewSource(7556))
for {
// wReward = wReward * (1.0 + percent)//first variant
wReward = supply * percent
fmt.Println("PoW bounty: ", wReward)
block++
// coinAge := rnd.Int63n(89970) + 30 //pseudorandom  coin_age in days
// sReward := float64((33 * coinAge) / 60265)*0.01
// sReward = sReward * (1.0 + percent)
// fmt.Println("PoS: ", sReward)
// block++
fmt.Println("----------------------------------------------------------")
supply = supply + wReward
// + sReward
fmt.Println("moneysupply: ", strconv.FormatFloat(supply, 'f' , -1, 64), " at block #", block)

fmt.Println("==========================================================")
if block > maxBlock { break }
}

os.Exit(0)
rnd.Intn(1)
}
Спрашивайте если что...
// это нерабочие строки (комменты).

"...Enemies are everywhere ! Angka is all rage ! Be a good soldiers, blow everything... " <-- Pol Pot (C)
Ukigo
Hero Member
*****
Offline Offline

Activity: 938


View Profile
March 31, 2013, 05:48:04 PM
 #85

вот рез. через 10 лет (блок 2629801) :
1.36910331191
процент ускоряется...

оно считало 40 сек ) - потому что  в файл,
это много быстрее выходит.

"...Enemies are everywhere ! Angka is all rage ! Be a good soldiers, blow everything... " <-- Pol Pot (C)
Ukigo
Hero Member
*****
Offline Offline

Activity: 938


View Profile
March 31, 2013, 05:57:40 PM
 #86

через 20 лет :
1.87444365476
сложные проценты разгоняют эмиссию
( если я ничего не перемудрил Wink ).
надо что-то с этим делать...

PS. Я брал год 365.25 дней

"...Enemies are everywhere ! Angka is all rage ! Be a good soldiers, blow everything... " <-- Pol Pot (C)
Storan
Member
**
Offline Offline

Activity: 112


View Profile
March 31, 2013, 06:09:16 PM
 #87

Сложные проценты и должны в абсолютном значении эмиссию разгонять.

И удвоение за ~25 лет - вполне нормально.
Биг мак за пол века подорожал в ~10 раз - а о постоянно безумной инфляции в США как-то не кричали всё это время  Cheesy


p.s. rand.NewSource(7556) - чего делает? обычный rand() си-шный, но в диапазоне 0-7556?
Ukigo
Hero Member
*****
Offline Offline

Activity: 938


View Profile
March 31, 2013, 06:27:38 PM
 #88

сейчас ничего не делает )
Он нужен для вычисления псевдослучайных
 искажений в наградах и комиссиях,
 чтоб имитировать нормальную работу форка.
 счас этот код отключен ( или не написан).

Go не С. Так что Rand тут другой.
7556 это seed для инициализации генератора.
Взят от балды и там надо как то по др.
 это сделать.
посчитаю 18 и 19 лет - надо посмотреть
, между сосед. годами процент стабильный
или нет ?
То я закодировал, что вы задумали , или нужно что-то менять ?


"...Enemies are everywhere ! Angka is all rage ! Be a good soldiers, blow everything... " <-- Pol Pot (C)
Ukigo
Hero Member
*****
Offline Offline

Activity: 938


View Profile
March 31, 2013, 06:39:39 PM
 #89

18 лет : 1.760293788
19 : 1.81647227375


"...Enemies are everywhere ! Angka is all rage ! Be a good soldiers, blow everything... " <-- Pol Pot (C)
Storan
Member
**
Offline Offline

Activity: 112


View Profile
March 31, 2013, 06:47:03 PM
 #90

Вроде бы всё то же самое

изменил строки
var percent_year = 0.0314159
var percent_day_multi =  math.Pow(1+percent_year, float64(1.0/365.0))
var percent = (percent_day_multi - 1) / 720.0


PoW bounty:  1.2522628786536848e-07
----------------------------------------------------------
moneysupply:  1.0638667494366378  at block # 525961
==========================================================

у moneysupply на одну тысячную разница. наверно из-за 365 дней в проценте.

1.81647227375:1.760293788 = 1,03191. Процент на 0,05 отличается от задуманного. может тоже из-за расхождений по високосным/обычным годам?

В общем,
Симулятор слабо-инфляционной валюты, со стабильным % эмиссии готов. Теперь осталось приспособить формулы из какой-нибудь "true money theory" для динамического изменения годового процента, и математическая база готова  Grin

если изменить на /365.25, и прогнать опять до 18 и 19 - по идее должно выйти 1.0314159, плюс-минус ошибки округления Smiley
Storan
Member
**
Offline Offline

Activity: 112


View Profile
March 31, 2013, 06:57:13 PM
 #91

ещё вариант - погрешность может накапливается, из-за того процент на блок вычисляется /720, а не извлечением корня 720-й степени из (1+day/100), но имхо с такой точностью уже подгонять - это маразм  Tongue
Ukigo
Hero Member
*****
Offline Offline

Activity: 938


View Profile
March 31, 2013, 07:07:14 PM
 #92

у меня время в блоках - я считал
 год 720 * 365.25 -- все годы поровну.

Ну не совсем готов - это полуфабрикат,
 надо наверное определиться с комиссиями
 и он типа считает чистый PoW.
И еще подумать что тут к чему.
например можно внести исправления
 для високосных лет ( или это не нужно Huh )

Чистая инфляция будет меньше мы не вычитаем потерю монет.Кстати тож можно попробовать
 ( в Биткойне потеря монет ( не считая Сатошины 2 мил.) ~1% в год +- трамвайная остановка ) учесть это.

С денежными теориями  все плохо.
Я там давал выше пост с 4 ссылками.
там есть график если туда засунуть
time preference будет более правдиво
 может из этого удастся извлечь оценку
 денежного спроса Huh

А вообще по прочтении ~ 30 статей на тему,
 мне кажется что лошади лучше и полезнее экономистов ...





"...Enemies are everywhere ! Angka is all rage ! Be a good soldiers, blow everything... " <-- Pol Pot (C)
Ukigo
Hero Member
*****
Offline Offline

Activity: 938


View Profile
March 31, 2013, 07:18:25 PM
 #93

Дык, я самого начала  и говорю :
PI - здесь просто красивое число Wink
Точно его подогнать не удастся,
оно ведь бесконечное в дробной части
 и все равно обрежется когда дойдет до пределов представления типа float64.

не уверен что корень такой адской степени
 удастся извлечь, в том числе и на C++
( для клиента ) с разумной скоростью. Wink

"...Enemies are everywhere ! Angka is all rage ! Be a good soldiers, blow everything... " <-- Pol Pot (C)
Ukigo
Hero Member
*****
Offline Offline

Activity: 938


View Profile
March 31, 2013, 07:40:17 PM
 #94

с вашими изменениями у меня выходит
между 18 и 19 : 0.031439103491001305 ( %
прироста в долях).
считал на Python, а не калькулятором.

"...Enemies are everywhere ! Angka is all rage ! Be a good soldiers, blow everything... " <-- Pol Pot (C)
Storan
Member
**
Offline Offline

Activity: 112


View Profile
March 31, 2013, 07:58:30 PM
 #95

Пока я вижу только такие сущности, независимо наблюдаемые системой (часть из них может и отсутствовать, определяется при проектировании):

блок - квант времени

М - общая денежная масса (где М0 - виртуальные монеты, нужные для эмиссионого алгоритма, (M + М0) - те самые supply из симулятора)

I% - текущий [рассчитываемый] процент эмиссии. Вычисляемый от него block_reward отходит майнерам (с точки зрения индивидумам - обогащение), с точки зрения системы просто обезличенная эмиссия каждый квант времени. Увеличение % эмиссии вызывает повышение инфляции, в "умеренных дозах" подогревая экономическую активность. Увеличение денежной массы, медленней чем рост связанной с ней (этими деньгами) реальной экономики - порождает замедление роста, но повышает защиту от пузырей и прочих перекосов и т.д.

V - сумма транзакций системы за время ххх, довольно сложно предсказать насколько соответствует реальной экономической активности, а насколько - перекладыванием денег из одного своего кармана в другой.

Vп - "бизнес"-транзакции с комиссией (минимум ~0,0..zz% от суммы транзакции) (практически "подтверждённая" деловая активность системы)

t% рекомендуемые проценты комиссии в транзакциях - "навязываемые" издержки при переводах и ослабляющие экономическую активность агентов, на величину эмиссии никак не влияет
(абсолютная величина комиссия возможно понадобится для технической защиты системы от спам-транзакций)

PoS%, % награды при PoS-генерации - величина стимулирующая "сбережения" и "накопления", при значении близком к I%, может вызывать стремление свернуть активность (транзакции) в пользу накоплений путём генерации PoS-процентов (но при добавлении несложного кода, на величину эмиссии никак не влияет)
Также PoS% по сути определяет минимальную границу стоимости кредита в системе (Таким образом понятие бесроцентный кредит - это кредит в 2*t% разовых + PoS% годовых).

из всего вышеперечисленного - косвенно можно вычислять объёмы "активных" монет (задействованных в транзакции + PoS), и объёмы "анабиозных/мёртвых" (оставшиеся, нигде не задействованные)

Итого, наблюдая на текущем блоке k (и для предшествующих блоков) параметры М, V, Vп, также вычисляя объёмы активных денег (транзакционных), денег на сбережении (PoS), и денег в анабиозе /мёртвых система по заранее заложенным правилам может изменять I%, PoS%, t/t%.

Ukigo
Hero Member
*****
Offline Offline

Activity: 938


View Profile
April 01, 2013, 05:36:15 AM
 #96

supply в симуляторе это М ( общая денежная масса.)
Просто он считается нарастающим итогом.
А что такое М0 я не понимаю (
Может М0 это тот прирост эмиссии , который дает PI % в год ?

Пож. не смешивайте симулятор и реальный клиент TrueCoin.
Симулятор - быстрая и опасная абстракция )
Все что на нем  удастся изобрести
 придется потом прикручивать к нормальному клиенту( и на другом языке).
НЕ забывайте также что, реальный клиент таки будет расчитывать block_reward
 по формулам близким к NVC/PPC
 И ПОТОМ вносить в него поправку на рост эмиссии ( чего не делает симулятор
 в нынешнем виде).

Счас разломаю ваши построения еще чуть-чуть )

 Согласен, что мы не можем отделить
 полезные транзы из общей массы,
 если алгоритм будет использовать объем
 транз ( полезных или всех) , то атакующий
 сможет манипулировать % эмиссии создавая
 паразитные транзы зря нагружающие сеть.

 Также в NVC/PPC комиссии за перевод
  УНИЧТОЖАЮТСЯ. Что ведет к дефляции.

 Если мы тоже так будем делать, то нам
 следует ВЫЧИТАТЬ комиссии из М.
 НО трудно предсказать каков будет объем комииссий. И придется тогда повысить %
 эмиссии ( не знаю насколько).

 Если же комиссии отдавать майнерам,
 то они НЕ ВЛИЯЮТ на рост денежной массы,
 так как просто передаются с одного адреса на другой, и их можно для расчета эмиссии
 НЕ УЧИТЫВАТЬ.
 
 Мне тоже больше нравиться 1% для PoS
(как в PPC) ( в NVC это - 5%).
тогда повысив общий процент эмисии ЕЩЕ на один процент мы сможем бороться с PoS-дефляцией.Захотят ли только PoS-майнеры
 майнить в такой системе ? Вот вопрос !

 Также мы не можем отличить монеты временно
 не активные от навсегда потерянных,
 "мертвых монет".А это важно.
 потерянные деньги следует вычитать из М.
 А придержанные монет - не следует.
 Их надо мобилизовать к участию в обороте.

-------------------
Думаю, придется таки просто сделать
 "инфляцию" общей М Huh





"...Enemies are everywhere ! Angka is all rage ! Be a good soldiers, blow everything... " <-- Pol Pot (C)
Ukigo
Hero Member
*****
Offline Offline

Activity: 938


View Profile
April 01, 2013, 06:48:43 AM
 #97

Можно сделать так :
PoW-майнеры будут получить награды по формуле
+ прирост эмиссии в 3.14% годовых, но никаких
 комиссий.(эти комиссии - уничтожать)

PoS-майнеры - награду по формуле PPC (1%)
+ все комиссии за транзы включенные в PoS-блок.

Поскольку награды за блоки будут всегда,
 то комиссии будут сравнительно небольшими.
Может такая схема будет лучше ?

"...Enemies are everywhere ! Angka is all rage ! Be a good soldiers, blow everything... " <-- Pol Pot (C)
Ukigo
Hero Member
*****
Offline Offline

Activity: 938


View Profile
April 01, 2013, 12:38:01 PM
 #98

Переделал симулятор на более натуральный метод
 подсчета , как-бы на реальных данных )
Результаты :
             всего монет | сумма PoS-комиссий
---------------------------------------------
через год :  1723799.84  |  10702

через 2 :    3419902     |  21414.26

3 года  :    5142299.93  |  32106.45

4 года :     6892737.85  |  42778

5 лет :      8669501.9   |  53463.46

 6 лет :    10475183.3   |  64169.25

 через
  18 лет :  34455927.6   |  192457

  19 лет :  36662355.64  |  203174

  20 лет :  38904060.95  |  213789.77

---------------------------------
Все считалось нарастающим итогом.
Может надо таки меньше сделать рост эмиссии,
 или блокцепи по 20 лет не живут ?

"...Enemies are everywhere ! Angka is all rage ! Be a good soldiers, blow everything... " <-- Pol Pot (C)
Storan
Member
**
Offline Offline

Activity: 112


View Profile
April 01, 2013, 01:32:28 PM
 #99

Да не натуральный это метод подсчёта. Если за 20 лет объём в 22 раза увеличился  Shocked

Не понимаю - зачем часть комиссий уничтожать. В идеологии NVC - понятно, их цель практически совпадает с биткоиновской -  число монет в системе со временем должно перестать расти.

И откуда взялась их идея эмисии в PoW-блоках, в зависимости от сложности системы (как аналог - придумали деньги в городке, рисовали в год по 10000 новых; потом расширили сферу влияния на область - стали рисовать по 1000, потом придумали клише для печатанья - стали выпускать по 100, стране понравились эти деньги - расширились ещё раз, стали выпускать на всю страну в год по 10 новых). Смысл экономический этого каков?
Как я понимаю с точки зрения их методологии: PoW-генерация, это просто распределённый по пользователям и во времени преймайн. Как только система вырастает из детских штанишек - PoW-генерация становится мизерной, и равновесный приход/расход денег в системе начинают обеспечивать PoS|шредер в транзакциях.
Ukigo
Hero Member
*****
Offline Offline

Activity: 938


View Profile
April 01, 2013, 02:02:17 PM
 #100

В моем новом плане - если уничтожать
комиссии PoW, то народ будеь стараться майнить PoS-блоки. Huh

У блокчейна есть время жизни.
Пусть TrueCoin живет 10 лет, и потом на пенсии еще 2-3 года Wink
Если все будут знать об этом заранее,
 то успеют мигрировать в др. новую платежную цепочку.
Это же только средство расчетов,
хранить в нем заначки никому в голову не придет.

Новый симулятор счас выложу.

"...Enemies are everywhere ! Angka is all rage ! Be a good soldiers, blow everything... " <-- Pol Pot (C)
Pages: « 1 2 3 4 [5] 6 7 8 9 10 11 12 13 14 »  All
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!