30 July 2020
mx
13:24
mr x
If blockchain was able to print money to address as primitive action :P. And then you control it with price futarchy (i prefer hash rate futarchy)...
MF
13:37
Mr Flintstone
do you need to specify what gets done?
13:38
given the ampleforth histrionics, you can get paid 5:1 if the price is below 1 dollar in ~17 hours
13:39
at the very bottom
13:40
did someone rly already take that trade
mx
13:40
mr x
lol
13:43
bets only about the price are kinda same as buying or selling the token?
MF
13:43
Mr Flintstone
not if its like 100:1
mx
13:43
mr x
right
13:44
yea just hold hostage the software
13:46
ampleforth the great solution to unit of account
13:47
stable from the get go
J
17:40
Josh
In reply to this message
since you already own veo, it's like a hedge but at the same time it's motivating people to increase the price
17:41
so it's kind of double benefit, you win either way
Z
18:08
Zack
In reply to this message
I built the augur MVP about 6 years ago.
Z
20:07
Zack
I got the pair-buy UI working.
I can make a tx and post it to the test-chain.
Now I am making a UI to check your balances in the subcurrencies for a contract.
Z
22:12
Zack
I made a tool in the light node for looking up your balance in a subcurrency.
22:19
I had to update the javascript merkel tree library to read contract and sub_account merkel proofs.
22:20
next I guess ill make a subcurrency spender, a tool for combining complete sets of subcurrency, a tool for making swap offers, and a tool for displaying and accepting swap offers.

After that we can start thinking about the hard update.
22:21
we need to get the scalar smart contract working before we can turn off the old kind of channels.
31 July 2020
Z
00:15
Zack
I made a tool for spending subcurrency.
00:19
I think next will be a tool for combining a complete set of of subcurrencis from one market to get the source currency out.
MF
00:41
Mr Flintstone
if the block time can change, you can't really have secure & cheap longer term contracts if oracle enforcement starts based on block height, so we are thinking you can update the chalang smart contract logic to account for this. so we can change the block time without any problems
Z
00:52
Zack
the smart contract can have rules like:
make an oracle with text: "the result of the football game was known after block height N", and another oracle who's betting begins at block height N, with the text "Alice's team won the football game".

So when it is time for enforcement, we can figure out what N needs to be to resolve this contract, and then build the oracles that that N.
00:54
Can we use 2 binary oracles to enforce the outcome of a scalar contract?

smart contract can have rules saying how they work as upper and lower bounds on the price.
00:55
maybe just one.
Is the price of X within 0.1% of P?
00:55
and require that the outcome of that oracle is "True"
00:57
using bits of smart contract to generate oracles that enforce the same smart contract, it seems like a technique with a lot of potential.
00:57
In reply to this message
I think this is a lot more secure than what we were doing before, encoding the value with N binary oracles
MF
01:04
Mr Flintstone
i think so?
01:04
that is a pretty cool technique
01:07
In reply to this message
so the contract splits the money based on the value of P in an oracle resolving true. and we agree to be governed by 10,000 oracles asking about different P, since only one can return true. even if there is a boundary condition or fuzziness, we could take the average of trues
01:08
this is a lot less complex than representing a scalar number as a set of binary oracles where true = 1 false = 0
01:09
and we have unlimited precision at basically no additional cost
01:12
In reply to this message
these oracles are procedurally generated so you dont need to store 10,000 messages. only the first and the rules to generate the next 10k or 1 million or w/e
Z
01:14
Zack
I think the trick to do it right is for oracles to reference their own start_height, and say something like "by block # start_height, we knew the result of the football game"
Z
02:11
Zack
I made the tool for combining a complete set of shares back into the source currency.
02:12
next off ill either make a tool for swapping pairs of currencies, or ill make a tool for withdrawing your winnings once a contract has resolved.
EA
02:40
Eric Arsenault
🔥
J
03:09
Josh
🚀
Z
04:35
Zack
I made the tool for generating swap offers. we still need one for accepting the offer and publishing the tx.
mx
17:21
mr x
Veo betting so smooth. Just accept bet and winnings arrive automatically :P
Z
17:22
Zack
We are getting there.
It should be possible to make an offer to sell your winnings before you make a bet. So soon winnings will be able to arrive automatically.
mx
17:24
mr x
Yea sort of works currently also...
Z
17:24
Zack
Currently you can only sell to the person you have a channel with.
mx
17:26
mr x
so cool.. not totally understanding this subcurrency stuff
MF
18:07
Mr Flintstone
yeah, it kind of works right now since the other person in the channel does have an incentive to settle early and get some money back, rather than not settle early and lose 100% of it. but it is much stronger if instead of relying on your counterparty to close your channel, you instead broadcast an offer to trade your contract to someone else in exchange for 99% of the winnings. it is kind of like how trade offers are right now, anyone can accept it and settle you early
18:20
we need to wait for subcurrencies to do that
Z
19:46
Zack
I got the swap-offer/swap-accept feature working in the contracts.html page in the light node
19:48
I guess we still need one for finalizing a contract once it's oracle is ready, and one for collecting your winnings from a finalized contract.
19:51
What im making now is like, a library of examples for how to interact with the full node's api and the txs. and im making javascript wrappers for the complicated parts.

This should make it easier build amoveo applications, like the auto-trader that someone had contributed recently, and our plan for offering to sell your bet for 99% of it's value before you have made the bet.
19:52
And it gives basic access to the new features, even to non-programmers.
19:56
I think im going to put off the muli-tx support for swapping and pair-buying until a future hard update.
It is better to have more smaller updates, and take time to think about what we want next.
mx
20:45
mr x
In reply to this message
yeahh
T
21:28
Tromp
@zack_amoveo a nice easier to use wallet would be nice 🍺
Deleted invited Deleted Account
Z
23:25
Zack
I made a tool for resolving the pair-binary contracts.
next up is a tool for withdrawing your winnings from a resolved contract.
1 August 2020
Z
00:14
Zack
I made the tool for withdrawing your winnings from a resolved contract.
00:14
lets play around with the interface for a while, then then decide if we are ready for the hard update.
00:19
I guess next I will start thinking about what kind of api and database we want for people to make a trade with a simultanious offer to sell their winnings. or accept a trade with a simultanious offer to sell the winnings.
or to buy someone's winnings to earn the interest.

With the goal being a user experience that you make a bet, and if you win, you just get paid veo at the end without having to do anything.
EA
00:20
Eric Arsenault
that sounds awesome
MF
00:34
Mr Flintstone
In reply to this message
wouldnt this be quite similar to the current setup? only we could remove the “settle early” buttons, and then add another explorer structured similarly just for close offers?
Z
00:35
Zack
ive got to train the database to store these new kinds of data
00:35
I think we can do it better this time. the swap to sell your winnings should be stored together with the pair_buy offer.
That way we only keep one offer to sell winnings per active pair_buy trade.
MF
00:38
Mr Flintstone
In reply to this message
yeah
Z
00:46
Zack
I think you have to get past block 3 or so for smart contracts to stop working.
00:47
And there is a bug in the test version of the light node preventing you from syncing past header 12.
For now try to keep tests between 4 and 12.
I'll try and fix this soon.
s
02:20
sanket
MF
02:28
Mr Flintstone
seems like they have a similar approach to scalars as what zack came up with yesterday
02:29
unfortunately the oracle is just a signed message
02:30
put 10 mil in eth on like 2+2=4 is true and i bet it would return false
02:33
anyone who claims to have a good oracle should do this as proof it is actually good
Z
02:33
Zack
I'm pretty sure discrete logs means the tx is on the order of # bits of precision of the calculated output
02:34
Maybe i misunderstood
MF
02:38
Mr Flintstone
i just meant wrt using a bunch of binary oracles with different prices to enforce a scalar
EA
04:03
Eric Arsenault
Does Amoveo need to somehow be connected to the DeFi space (ie Ethereum) in order to get adoption? Curious to hear thoughts
CD
04:44
Crypt Dweller
"DeFi space" is basically one big ponzi scheme, it's simply mirroring the same speculative fervor that's taken hold of equities market, just on a smaller scale. Don't be fooled that it's driven by "fundamentals"
04:44
Give it a year, it will collapse
EA
05:32
Eric Arsenault
Regardless of DeFi, Eth does seem to have the biggest community. Feels like being a siloed off ecosystem wouldn't be great for adoption
Z
05:33
Zack
cme is bigger
EA
05:33
Eric Arsenault
cme?
Z
05:34
Zack
Chicago Mercantile Exchange
EA
05:34
Eric Arsenault
Oh yeah, sure... but not crypto
Z
05:34
Zack
"crypto" isn't a product.
derivatives are a product.
EA
05:35
Eric Arsenault
right, I'm just wondering how we can reach people, when the derrivatives product is on the blockchain, and there are many hoops to jump through to use it
05:36
One option is just to cater to communities already on the blockchain
Z
05:36
Zack
cme has hoops too. I think you need to be an accredited investor? I don't have an account.
EA
05:36
Eric Arsenault
yeah that's true
05:37
maybe we just need easy fiat onramp / offramp
I
05:41
Instinct
In reply to this message
Yeah I’m surprised there hasn’t been more interest from people in the Defi space interested in Amoveo as an alternative to what’s going on. Seems like everyone’s caught up in the hype & don’t want to look at potential issues
I
05:43
Iridescence
just need more marketing
I
05:43
Instinct
Like most projects tout chainlink is the be all oracle solution when it’s just decentralised trusted feeds.
EA
05:43
Eric Arsenault
I actually think Zack's approach of focusing on the product before doing any marketing makes sense
05:44
Just trying to think ahead, assuming we have a great product, how are we going to attract traders, users
I
05:47
Instinct
I think the oracle escalation method in Amoveo is a crucial design distinction that projects based on ethereum can’t replicate
J
08:13
JOHNwick3's dog
In reply to this message
opportunity to accumulate.
08:14
shhhhh lol
asadicryptoD invited asadicryptoD
CD
08:39
Crypt Dweller
there's maybe 5-10 people actively accumulating on QTrade. Might stay this way for a year or even two if the all-encompassing financial asset bubble actually, eventually pops. Amoveo is the sleeping giant. The less the herd knows about it the more Zack can develop in peace and the less its reputation will be tarnished by absurd PnD before the product even becomes usable. Amoveo is soemthing completely different from the normal script for altcoins..
08:40
Few know this...
08:41
We care about price as an indicator of usage but it's completely secondary to the gift that Zack and friends are preparing for the world IMO
Z
19:54
Zack
This is another reminder that the "big launch" strategy is not effective with software.
It is better to grow slowly and listen to your customers needs.
Z
20:39
Zack
The pair-buy trading system, for now we will always have each pair-buy offer, and acceptance create a swap offer, to sell their winnings.

but in order for that swap offer to get accepted, we need there to be existing browser tools for publishing and accepting swap offers between the subcurrencies.

So I feel like we should first build the server and interface for publishing and accepting swaps.
Once that works, then we can think about having a system of bets that use swaps to auto-settle.

Maybe calling these txs "swap"s was a bad idea. I think a "swap" is also a kind of derivative.
20:43
i guess it is a derivative swap. swap is probably an ok name.
T
21:02
Topab
Is it very unsafe to use the light node http://159.89.87.58:8080/home.html to send a tx?
Z
21:21
Zack
In reply to this message
You are trusting me, and whoever I rent that server from.

I use that for less than like 3 or 4 Veo.
I don't put big private keys on that one.

It is safer to download from github and open on your own computer
21:21
You don't have to install anything. Just open in a browser
T
21:22
Topab
Thanks Zack!
21:22
I thought I had to install something
T
22:40
Topab
How to "To connect to the mainnet with the light node, open src/js/home.html in a browser." It may be a very easy thing to do but I really do not know
Z
23:12
Zack
Double click on it
23:12
You downloaded the zip file from github?
T
23:18
Topab
Yes
23:18
I did it
MF
23:25
Mr Flintstone
extract the zip file into its own folder, then navigate into src/js
23:27
i wonder how we can make it better, so its just like, download and double click. like any normal application
23:27
instead of the extract navigate business
23:28
but probably github wouldnt support that? not sure
mx
23:39
mr x
converting to browser extension or maybe electron app should be pretty simple
23:42
and the download those from OFFICIAL source 😅
T
23:47
Topab
In reply to this message
Thank you! I got it. Navigate to the file home.html and double click it. It is simple, I just could not understand the instructions
MF
23:59
Mr Flintstone
nice thing about github at least, is you know most likely that what youre downloading is the code on the page
2 August 2020
Z
00:00
Zack
Microsoft wouldn't steal my Veo. Would they?
MF
00:00
Mr Flintstone
isnt it up to one person potentially? like one bad employee
Z
00:01
Zack
How do I get his job?
MF
00:01
Mr Flintstone
there is a lot of money in crypto projects maintained on github, so probably it is tough
00:01
but idk much about how github works
Z
00:02
Zack
It says https
So people will trust it
MF
00:03
Mr Flintstone
lol
00:17
The fact that AMOVEO uses a diff mining algorithm should help it against attacks like this right
Z
00:18
Zack
wow, that is exciting.
yes, using a different algorithm makes it harder to do this kind of attack.

As long as eth classic and eth are using the same algorithm, then miner from the bigger side can get together to attack the smaller side.
Deleted invited Deleted Account
Z
16:55
Zack
It might be a mistake to have the nonce increment by 1 for swap-txs and pair-buy-txs. Maybe it should increment to whatever is written on the tx, and we should have a trade-id that gets consumed to prevent this trade being re-done.
the trade-id and its merkel proof are expensive.

But there is this scenario I am imagining.
What if someone wants to do multiple unrelated trades at the same time?
If I set my nonce to +4 for the 4 different trades I want to make, it may end up that the first trade gets accepted 4 times, and the other 3 are now blocked.

So this means for most situations, each account can only have 1 open trade offer at a time.
So people who want to make multiple simultanious trades will be putting money into other accounts.

Moving money between accounts this way is difficult from a usability perspective, and it is expensive because of the on-chain txs to move the money around.

A unique trade id for each trade would be smaller and cheaper than creating new accounts all the time.

We could probably have a tx for cleaning up old trade id info from more than 10k blocks ago.
So users of smart contracts with expiration more than 10k blocks in the future, where the contract has already been matched, and they don't want to match again, they would need to increment their account nonce at least once every 10k blocks. This would allow for the trade id tree to be as small as the number of matched trades in 10 weeks.
17:06
Amoveo needs to allow for multiple bets at the same time, and it needs to be a simple interface.
17:12
with channels we got this for free, from the channel ID. each channel id uniquely defined a trade.

but with contracts, there could be many groups of people owning value in the same contract. the contract id doesn't uniquely define a trade.
Karin invited Karin
Z
17:24
Zack
the super simple target interface we have been building towards. making an offer to sell your winnings before you have won, so it can automatically withdraw.
This only works for binary contracts where one person ends up with 100% of the money.
Deleted invited Deleted Account
Z
22:03
Zack
I set up the merkel tree for storing trade ids.
22:04
next ill update the txs to use trade ids, and then update the tests and light node code for the new tx format.
MF
23:51
Mr Flintstone
In reply to this message
I thought we were going to have a swap ID?
23:51
for this problem
23:53
In reply to this message
you can do this with a scalar as well i think. if there is binary logic to prevent one side from winning more than x% of the money
23:53
it would be like a take profit level, or a stop loss
3 August 2020
Z
00:32
Zack
In reply to this message
Yeah, that makes sense.
00:33
In reply to this message
That was temporarily the plan, and now it is the plan once again.
My hack to make txs smaller didnt work.
MF
02:23
Mr Flintstone
In reply to this message
I think it would be like a digital option inside the scalar. so once the reference price moves x%, the contract is finalized and can be settled early
Maxfield invited Maxfield
Deleted invited Deleted Account
Z
09:17
Zack
In reply to this message
I updated the txs and test. next ill update the light node for these changes.
MF
09:19
Mr Flintstone
awesome
Deleted invited Deleted Account
C
16:14
Callum Wright
In reply to this message
yep
16:15
I think there are rooms of a blockchain for cheap derivatives that solves liquidity issue (even better if at scale)
16:15
let's focus to make it works first
Z
20:20
Zack
In reply to this message
I updated the light node for these changes
20:23
Next I will focus on making a javascript interface to post and accept swap requests.

Ive been thinking of keeping track of the recent history of open swap requests.
That way I can support a really nice api.
they can say "Last time I checked, we were on nonce 153 for market id 5. Send me an update if market 5 is now bigger than 153"

And the server can realize we are on nonce 158, so it can pack up blocks 154-158 and send them to the client. That way the client can know the current state of the market as quickly as possible, and they download the least amount of data necessary.
20:27
having every client download the entire list of trades every few seconds just isn't scalable.
Z
21:00
Zack
so I guess I want 3 main data structures for each market.
1) the current order book. just storing trade ids and meta data.
2) the recent history of how the order book was made.
3) the full trades for the current order book, including signatures and data needed to generate the contracts and enforce the oracle.
21:04
I wonder if it makes sense that each market should be on a different thread.
So we can have lots of little databases in parallel, instead of one big one.
21:12
I am thinking (1) should be a big dictionary with pointers inside to build linked lists of elements in that dictionary, so each linked list is the order book of a market.

That way we can quickly add or remove a trade in any market.

(2) should be a big dictionary of arrays, so we can quickly send ordered slices of these arrays to clients.

(3) a dictionary that stores by trade id. possibly on the hard drive.
21:16
maybe i should keep a dictionary for (trade_id -> internal_id) somewhere. So we don't need to keep writing these big trade_ids all over the place.
21:20
I think for (1), we are basically going to be sending the entire list every time. so making it a dictionary is not a good strategy.
We should just store it as an array.
Z
22:22
Zack
I am thinking ill make every market in (1) be identified by [subcurrency id 1, subcurrency id 2]
so buying and selling will technically be different markets.
This keeps the database simpler.
4 August 2020
Ilove Shrine invited Ilove Shrine
CD
03:30
Crypt Dweller
What are the important elements did you take from Paul Sztorc's Truthcoin? Did you discard any of his ideas?
Deleted invited Deleted Account
B
14:30
Ben
indeed
Bullmode invited Bullmode
Z
17:39
Zack
In reply to this message
I started working on prediction market blockchains in early 2014 because of Pauls website about truthcoin. I was the second biggest contributor to the truthcoin forum. I was moderator of that forum.

Paul felt like it was important to make it compatible with bitcoin, to use bitcoin software, and to hire developers.
I felt like it should be a new blockchain, written in new software, and written by volunteers.

Making it a part of bitcoin seemed like more of a political problem than a technical one.

C++ is very slow to write. Paul felt that reusing bitcoin code would save time, because it has been so well tested.
My feeling was that c++ is really hard to make secure, and that it is a pain to write.

Anyway, it seemed like trying to build it both ways at once would increase our odds of success.

Later on I focused on PoS for a couple years, and Paul thought PoS was impossible.
Eventually I also decided PoS was impossible, and I wrote some math to explain why.
But my math also makes it look like the Oracle that Paul had designed does not work. His oracle is a voting mechanism, it is vulnerable to bribes by tragedy of the Commons.

So I designed a different oracle that doesn't have this vulnerability.

Paul thinks the Oracle I designed for Amoveo will cause blockchain forks where both sides of the fork survive. So we both think the other person's oracle won't work.

Drivechain is Pauls plan to make truthcoin as a bitcoin sidechain.
I think drivechain is vulnerable to bribing bitcoin miners. Drivechain won't work to host truthcoin.

I think that the on-chain markets in Pauls design are vulnerable to front running from the miners.
In amoveo we are careful to allow for off-chain markets enforced by state channel, to prevent this.

Paul thinks that turing complete contracts make the system insecure because you can use the contracts to pay bribes to break his oracle for example. That is why he dislikes the state channels in amoveo.
But my feeling is that even if we don't have turing complete contracts in our own blockchain, that some other blockchain will have this feature, so it is still possible to use smart contract bribes to attack.
19:43
I added nonces back to swap-tx and pair-buy-tx, because they can be used to simultaneously cancel many open offers with a single on-chain tx.
They don't increment your account nonce, they just check that your on-chain account nonce is lower than whatever nonce is written on the tx.

So you can cancel individual offers by re-using the tradeid. or you can cancel a bunch of offers by increasing your nonce. or you can cancel all the offers associated to a single account by draining it's balance.
Z
20:27
Zack
Here is the api I am thinking of using for the p2p explorer swaps.
doit({add, S}) ->
%give a swap offer to the network
{ok, "unimplemented"};
doit({history, ID, Nonce}) ->
%returns the history of updates to market ID since Nonce.
{ok, "unimplemented"};
doit({get, ID}) ->
%returns the current state of market ID
{ok, "unimplemented"};
doit({markets}) ->
%list of active markets.
{ok, "unimplemented"};
20:33
There is a campaign to expose chainlink as a fraud
Z
20:52
Zack
Are you sure it isn't kayfabe?

Chainlink's social media team could occasionally release supposedly anti-chainlink documents like this.

So if any chainlink fans have doubts about chainlink, they will read this and in this way the chainlink advertisement team can control both sides of the perceived debate.
I think that the purpose of this document is to advertise chainlink.

I looked through the first part of their 60-page pdf that supposedly exposes chainlink as a fraud.
It reads more like promotional material for chainlink. They spend a lot of time bragging about chainlink features.
And they don't spend any time explaining why chainlink cannot work as an oracle.

They are focusing on aspects that don't matter, like the cost of operating a computer to respond to oracle questions. A person reading this would think "This is the best reason the competition can make for why chainlink wont work? but that doesn't matter at all."
I
20:58
Instinct
It could be a holder, prob not the team. Wouldn’t be worth the risk
20:59
It was already above $2b market cap before Zeus capital fud
Z
21:00
Zack
I think this isn't fud. it is a kind of promotional material for chainlink that is dressed up to look like fud.
21:01
I think people today enjoy conflict and the opportunity to show their loyalty to their own team.
Maybe this is a better way to do advertising.
21:01
Maybe I should write an anti-Amoveo blog post and put it on a website that looks like some Korean investers wrote it.
I
21:02
Instinct
In reply to this message
Lol
Z
21:34
Zack
How is this fud?
In  theory, Chainlink’s decentralized oracle network might find application in a variety  of  areas,  such  as  finance,  payments,  insurance,  supply  chain,  utilities, government, and regulation, as well as gambling. In fact, Chainlinkhas outlined 44 ways to utilize their solution. However, considering the drawbacks discussed so far, the most natural use cases would  be  high-value  smart  contracts,  projects  relying  on  multiple  primary  data sources,  or  contracts/projects  requiring  a  high  level  of  security.  Taking  into account the infant development stage of the blockchain ecosystem, by far, the most intuitive applications of Chainlink’s protocol are in the financial servicespace
21:34
it is like, reverse-psychology marketing
ŽM
21:37
Živojin Mirić
In reply to this message
I have resources at my disposable that enable me to produce such a post and in high quality.
Z
21:37
Zack
I feel like right now cryptocurrency is more or less a part of the entertainment industry.
21:38
people like to feel that they are on a team. and they like gambling.
ŽM
21:38
Živojin Mirić
people went in to get rich quick and now they are still in it for that thin thread of hope.. but mostly for the LoLs
MF
21:55
Mr Flintstone
In reply to this message
lol
J
22:02
Josh
In reply to this message
GPT-3?
ŽM
22:10
Živojin Mirić
In reply to this message
no, that's not good enough yet
Z
22:57
Zack
https://github.com/zack-bitcoin/Amoveo_p2p_derivatives_explorer/commit/95513b6f1a3e49637a7ec42fb32f97042bb9b4fa
I am updating the p2p derivatives server for the new kind of smart contracts.
J
23:01
Josh
In reply to this message
Was joking 😛
ŽM
23:02
Živojin Mirić
if you say so
JS
23:15
Jon Snow
In reply to this message
Yeah, it could be kayfabe now I think about it
Z
23:26
Zack
My very professional Korean firm, Poseidon Tech Investments, suggests not to invest in Amoveo. We expect the price to hit $0.01 within the next month.

The problem with Amoveo is that it is only scalable enough to be global.
How will people on mars ever be able to take advantage of Amoveo's financial derivative technology?

Another serious limitation with Amoveo is that you can only use it to bet on things that become common knowledge. If I flip a coin secretly in my room, we can't bet on whether it is heads or tails.

Given Amoveo's serious limitations, we at Poseidon Tech Investments believe that Amoveo can only be used for financial derivatives, and suggest that Amoveo development focus on such markets as derivatives for things like real estate, oil, currencies, gold, for betting on sports and politics.

Amoveo's oracle may be cheaper to use, and more secure than any of the competitors, but that is clearly not enough to make up for the limitations in Amoveo's tech that we have outlined in this paper.
EA
23:29
Eric Arsenault
LOL would make a good parody marketing stint
Z
23:30
Zack
idk how many layers of meta our audience can handle
5 August 2020
Z
00:35
Zack
the new way we are storing the derivative offers is a lot nicer.
There is going to be a fraction as much traffic over the network.
It used to be that you would download the entire list of trades in a particular market every time a new trade showed up.
Now you can just download a condensed list of what changed since last time you looked.
CD
00:37
Crypt Dweller
LOL
00:38
God damn it Zack, how are you always right... Regardless, on a long enough timeline the value of chainlink and ethereum and other crypto ponzis will trend towards 0 while plucky little Amoveo shall survive
00:39
the current state of crypto is disgusting, and I am embarrased to have publicly associated with it in the past
00:40
we are badly due for an armagaddeon to reset the stage
EA
01:06
Eric Arsenault
Probably a lot more pumping before Armageddon!
K
01:20
K
In reply to this message
Have you checked out Tellors Oracle? They're using a PoW and PoS hybrid model to do it
K
02:19
K
Sorry, I'll check there before asking again💪
I
02:43
Instinct
In reply to this message
Yep
Z
04:18
Zack
I got the first version of the p2p swap server written.
I wrote an interface into contracts.html for publishing swap offers, and successfully tested it to publish an offer for a test network.
04:18
the code is a lot clearer this time.
04:19
I need to write a little error handling and garbage collection still, and we need a interface in the browser for viewing and accepting swap offers that other people have made.
04:22
the contracts.html page is getting pretty long
04:22
maybe it should be contracts_examples.html
Deleted invited Deleted Account
LJLJLJ invited LJLJLJ
C
11:25
CryptoGainz
My cost basis for veo is 350$
When breakeven?
B
14:05
Ben
In reply to this message
21.03.2021--02:34 PM
Š
16:09
Šea
In reply to this message
🙊
16:11
felt good to reject 800$ offers back in 2018.
ŽM
16:20
Živojin Mirić
In reply to this message
❤️
Z
18:54
Zack
In reply to this message
We look at how long each block took vs how long we had expected. We take an exponentially weighted average, so more recent blocks matter more.
We update the difficulty on every block.
There are bounds for the maximum difficulty change that can happen per block.

The difficulty adjustment accounts for the time taken for the current block being mined. So if it takes long enough to mine the current block, the difficulty starts dropping for the current block.

In order to prevent oscillations, we have a dampening mechanism. there is a factor of 2 target window.
As long as we are mining blocks between like 7 minutes to 15 minutes, it won't change the difficulty.
18:59
I think that the exponentially weighted average gives 1/2 the weight to the most recent 20 blocks, something like that.
So the most recent block only accounts for around 4%
18:59
If no blocks are found, the difficulty will keep dropping and eventually the blocks will be consistent again.
19:01
Any retargetting algorithm has trade offs.
You don't want miners to be able to push the difficulty and blocktime around for low cost, but that means it takes some time to recover from sudden changes in hashrate.
Z
20:11
Zack
I updated the subcurrency branch of the p2p derivatives explorer. I updated the light node.
Now you can publish swap offers, and view available swap offers.
20:14
next up we will need a very similar system for pair-buy offers.
Z
21:46
Zack
I set up the cronological history database to delete all the data more than 10 minutes old.

I set up the order book to delete orders that get matched or become invalid for any other reason. and when they are removed from the order book, the full data is also removed from the database that stores the entire swap offer. and we add a record to the cronological history database that an offer was removed from this market, so light nodes can easily sync to the new state.
21:46
I need to set it up to save to the hard disk if it crashes or gets turned off.
21:58
In reply to this message
I did this.
6 August 2020
Z
01:20
Zack
If you want to accept a swap tx, it is important you have the data needed to resolve the contract that controls any subcurrency you are buying.

We need to add this resolution data to the server.
01:25
I'm thinking that the derivatives server should maintain a different database for the Oracle questions.

So if you want to make a bet offer, and the server doesn't know about your oracle, you need to teach it about the Oracle first before you can make bets that depend on the outcome of that oracle.
Deleted invited Deleted Account
Z
02:36
Zack
I rewrote the binary derivative smart contract to use 3 subcurrencies.
So bad_question is a tradeable outcome.
t
03:13
trappist
I think I would never have thought of that.
EA
04:57
Eric Arsenault
In reply to this message
Martin (Gnosis ceo) had a thread recently arguing that PMs shouldn’t have bad outcomes
04:57
Let me find it
05:01
don't think this was it, but he mentions something about it here: https://twitter.com/koeppelmann/status/1286205511139033089?s=20
07:02
PoW scalable blockchain with low latency already built and backed by big people
07:04
Majority of coins will be distributed via PoW like in Amoveo
07:06
In reply to this message
I'm not shilling. I'm telling zack about something that may help amoveo scale
07:18
In reply to this message
L2 needs a scalable L1 to work
Deleted invited Deleted Account
C
09:36
Callum Wright
In reply to this message
you just sound salty mate
09:36
Let's talk about Amoveo in Amoveo channel
C
10:01
Callum Wright
@zack_amoveo have you thought of how to make the process of converting between shareable contracts and mutable contracts friendly for normal users?
10:03
obv not a priority at current stage, but just wondering what you think
Z
20:25
Zack
In reply to this message
I added a database to the p2p derivatives server for storing the stuff we need to settle contracts. the oracle text and oracle start height.

Now it wont accept any swap offers unless it already knows about the oracle and how to settle it.
I still need to create an interface to teach the p2p derivatives server about new oracles.
Z
21:57
Zack
I added tools to teach to the server about the new oracles. I added error messages, so if it doesn't know about an oracle, it will tell you.
7 August 2020
B
14:28
Ben
looks like some good progress is happening, when do you expect that you will delare stable candidate for broad adoption?
14:29
Br invited Br
Z
17:23
Zack
In reply to this message
That's not how it works.
No one declares anything.
Daniel invited Daniel
MF
21:11
Mr Flintstone
haha i think he means more like, when can we have an easy to use product that is appropriate to be marketed
Z
21:49
Zack
Hopefully soon
8 August 2020
Deleted invited Deleted Account
mx
14:24
mr x
bunch of code got just removed?
Deleted invited Deleted Account
Deleted invited Deleted Account
Š
17:54
Šea
i'm so happy to be part of such an unique community. The only oracle project that doesn't follow the market
17:55
we gonna lead the trend again once the market reverses
Z
19:22
Zack
a swap tx is always between just 2 currencies.
A smart contract could have any number of subcurrencies. A pair-buy tx involves a complete set of subcurrencies from a single market.

You could have a pair buy offer where you want to buy N shares that your football team will win, along with N/2 shares that the oracle will decide it is a "bad question".

The only kind of pair-buy offer that can be converted into a swap offer is if the person making the offer will only gain or lose 1 kind of currency.

The only kind of swap offer that can be converted into a pair-buy offer is if they are swapping between a subcurrency and the source of it's contract.

Maybe we need a 3rd kind of offer that is more restrictive and can work as either kind of offer?
Z
19:44
Zack
Remember the idea to use one signature for multiple swap-txs and pair-buy txs?
we can take that idea further.

Lets allow for a multi-tx like this, and during the processing of the tx various balances can go negative, as long as they end up positive at the end.

So for example, lets say that someone auto-sold their shares for 99% of the value to get their money out early.
The person who lost the bet, they want to buy the winning shares for 99%, combine it with their losing shares for a 1% profit.
But they don't have enough funds to buy the winning shares.

So they could make a multi-tx that first does a swap-tx to buy the shares for 99%, then it does a contract_use_tx which combines the winning and losing shares to get back enough profit to cover all the costs.
Z
20:14
Zack
multi-tx currently only supports spend and create-account tx types.

I think I will add support for use-contract, swap, and pair-buy txs.
And for every one of these new tx types, I will just assume they want a flash loan every time.
Before processing the txs I will deposit a bunch of money into accounts and subaccounts that are involved, and I will take the same amount of money back afterwards, and check that the balances are still positive.
J
21:00
Johns
👍
Z
22:57
Zack
writing 2 fees on each swap_tx and pair_buy_tx was a mistake. we can account for this different in the price at which the trade is matched.
It was limiting, because the person who matched the trade couldn't customize the fee based on the current demands to get the trade into the mempool.
So I got rid of that second fee, now the 2nd person controls the fee, and the 1st controls the price.
22:58
this simplification should make it easier to fit these tx types into the multi-tx.
23:03
I am going to write 1 fee on these things.
Because I want it to be possible that the person who accepts a contract, they don't need to own any veo.
23:03
you can set this fee to zero if you don't want to use that feature.
Z
23:22
Zack
This tool will be great for trustlessly doing arbitrage
23:22
though I guess the mining pool would just take it all away from you
Paarthurnax invited Paarthurnax
9 August 2020
K
00:47
K
Would it be possible to make a bridge between amoveo and ethereum so people can trade a VEO erc20 token?
00:48
I feel like the hype around defi on ethereum would make more people start trading VEO which would lead to more people checking VEO out
MF
01:39
Mr Flintstone
lets get a good product before the hype phase
K
01:55
K
In reply to this message
What if the product takes too long and we miss the hype phase? won't that set back the project's adoption by years?
CD
02:05
Crypt Dweller
^
02:05
If you want a "hype phase" look somewhere else. Amoveo is anti-hype.
02:08
It either succeeds on a stupendous, world-changing level or fizzles out. Obviously one of these outcomes is vastly more likely than the other, but its odds seem to decrease, albeit little, with each month that Zack and his colleagues chip away at the elusive, perfected form of a decentralized prediction market after which they strive.
K
02:09
K
In reply to this message
Having hype will help amoveo succeed. The point of this project isn't to fail, it's to change the world.
CD
02:10
Crypt Dweller
All the adoption and hype in the world won't make a project work if its security and economic model is broken from the start. Let's revisit the price of Chainlink in two year, shall we?
K
02:10
K
In reply to this message
Having no users and nothing won't help a project with good tech succeed either. It will still fail.
CD
02:10
Crypt Dweller
"Adoption"--if you think that's what's going on with the recent "hype" cycle, just LOL brah, you have some things to learn. I fully accept I will sound like salty bear by saying this. That doesn't change the facts.
K
02:12
K
In reply to this message
Imagine of VEO got as hyped as link. VEO actually has legitimate fundamentals. Hype and a good project aren't mutually exclusive events. They both help one another greatly.
orb invited orb
MF
02:35
Mr Flintstone
In reply to this message
its almost there
Aim Bman invited Aim Bman
Z
08:41
Zack
Each iteration only has a small chance of success.

I am pretty excited this time too though, it feels like we have a good shot this time.

As long as we keep iterating quickly, we will find something good eventually.
kdmlll invited kdmlll
Meti 💚$CHSB💚 🌳 🌎 🇨🇭🦄 ⭕️ invited Meti 💚$CHSB💚 🌳 🌎 🇨🇭🦄 ⭕️
JS
20:03
Jon Snow
In reply to this message
Not many people knows this project. Very under the radar
Cryptonian invited Cryptonian
10 August 2020
Alfie invited Alfie
Mfa invited Mfa
Axl Q Megahorse invited Axl Q Megahorse
H3R3TiK invited H3R3TiK
Money Fox Guy invited Money Fox Guy
Deleted invited Deleted Account
BJ
14:31
Bear Jackson
I can't login
14:31
Is there an issue with that?
14:39
here
Tarrence van As invited Tarrence van As
S.wHITE invited S.wHITE
Z
15:49
Zack
In reply to this message
Login to what?
Chris invited Chris
C
17:10
Chris
How can you buy and store Veo?
Z
17:27
Zack
start with the github pinned link.
There is a section about the "light node"
Z
18:58
Zack
https://github.com/zack-bitcoin/amoveo-docs/blob/master/blog_posts/philosophy_of_blockchains.md I wrote this blog post about 4 major philosophies that I can see in the cryptocurrency space.
D
19:13
Deleted Account
Now is the time to spread the good word about Amoveo fellow hodlers
Z
19:57
Zack
I think we don't need pair-buy-tx.
a combination of a contract-use-tx with a swap-tx inside of a multi-tx can accomplish the same thing.

This means we can delete a lot of code.
Z
20:18
Zack
This is a relief, because it means I don't have to build a separate order book for pair-buy-tx in the p2p derivatives server, and I don't have to maintain the pair-buy data structure, or the software to convert it to JSON, or javascript for making and editing them.
20:18
and i don't have to think up a better name for it than "pair buy"
Š
20:22
Šea
In reply to this message
exactly
20:23
somebody make a spreadsheet with all the oracle projects pumping and put veo on it, with all the metrics, small mcap supply etc
Z
20:24
Zack
Amoveo was the first oracle project, right?
Š
20:24
Šea
was it?
Z
20:24
Zack
like, first with a functioning oracle on main-net
20:24
because we were able to launch before Augur
20:25
and I think Augur was first on Ethereum
20:25
I guess the definition of "oracle" isn't clear at all
20:25
there were those 2 of 3 multisig services before Amoveo
ŽM
20:26
Živojin Mirić
yes and they call it working oracles and everyone buys that
20:26
if amoveo was the first with a functioning oracle that should be wide known
Š
20:26
Šea
don't overcomplicate zack, 'MCAP comparison with Oracle buzzword on a sheet is enough
20:27
show people we're the only project not pumping atm
ŽM
20:27
Živojin Mirić
NO!!!
20:28
MARKETING STARTS IN 50 YEARS! stop rushing it
Š
20:28
Šea
marketing starts when Zack dies?
ŽM
20:28
Živojin Mirić
you are here only for the money!
Š
20:28
Šea
well
20:28
...
20:29
you got me
H
20:29
H3R3TiK
Like Van Gogh
20:29
only appreciated posthumously
D
20:30
Deleted Account
Can we get some good bullet points together about VEO?
Š
20:30
Šea
no haha
ŽM
20:30
Živojin Mirić
In reply to this message
everything is on github
D
20:31
Deleted Account
Zach's history in blockchain and how impressive he is
Nasdaq
Working oracle
Not a scam
Ikigai report
Low cap
Defi, derivatives etc
l
20:31
lyzer
In reply to this message
hahah yeah scare those stupid speculators away sir
Š
20:32
Šea
In reply to this message
needs to be compared to other oracle projects
20:32
but yeah, these are good points
20:32
you managed to find some shillables for veo, im in awe
ŽM
20:33
Živojin Mirić
I sold all my VEO so I can keep a clean head when this thing explodes, I have to be always at service to the higher cause of implementing GLOBAL GOVERNANCE BY FUTARCHY!

investing to make a quick buck would cloud my mind and put me at a lower resonance vibrational state compared to ZACK ALMIGHTY
l
20:34
lyzer
In reply to this message
Hahahaha 😂👌
20:34
It's a shame really I never bought veo because I got scared off
ŽM
20:34
Živojin Mirić
you should buy it if you don't plan to dedicate your life to it's success
Š
20:34
Šea
In reply to this message
feeling bad cause you didn't lose money?
ŽM
20:34
Živojin Mirić
I would recommend it to anyone in the world to buy this
Š
20:34
Šea
wow
ŽM
20:34
Živojin Mirić
(but myself for specific reasons I mentioned)
Š
20:35
Šea
do we have amoveo trollbox, unofficial group?
20:35
or only lvl 2, 3 etc
ŽM
20:35
Živojin Mirić
lvl2 only PLEB
20:36
We have this
l
20:37
lyzer
In reply to this message
haha nah that was kinda expected from the build and they will come attitude
20:37
but its a shame for a project with alot of potential, created by someone with alot of hart and dedication
20:38
theres alot of projects out there that are worth lot more simply because of their marketing and hype
ŽM
20:38
Živojin Mirić
In reply to this message
I don't believe this
l
20:39
lyzer
In reply to this message
its kind of a fact thats hard to ignore when you open your eyes lol
20:40
In reply to this message
pretty much indeed
Š
20:41
Šea
In reply to this message
now is the time to join here
20:41
maybe we can get some exit liquidity if we do a good campaign now
20:41
Kulupu broought some nice volume to qtrade
20:44
In reply to this message
if anyone wants to join marketing team please get in, 16 people working on VEO marketing atm, only few free slots left
A
22:09
Alfie
In reply to this message
Zack is brilliance
Z
22:09
Zack
In reply to this message
we also don't need team-buy-tx.
We can have a multi-tx with a bunch of swaps inside, and a single contract_use tx.
Z
23:07
Zack
I made a passing test where we use a multi-tx with a swap and a use-contract inside of it.
23:07
now I guess ill go back and rewrite the tests to not use pair-buy, then I will delete the pair-buy stuff from the codebase.
23:07
lucky thing we figured out that we don't need pair-buy or team-buy now. instead of finding out after merging the hard update
23:18
oh, there is one thing pair buy could do that a combo of swaps and contract-use cannot.

With a pair buy, if there is a contract with say, 4 subcurrencies, I could make an offer that involves me purchasing a mix of 3 of those 4.
Either the entire offer is matched, or none.

The person accepting, they either have to accept my entire deal involving all 4 subcurrencies, or nothing.

But if we use swaps and contract-use in a multi-tx instead, then it is the reverse.
the person making an offer, it is really several small offers. and the person accepting, they can accept any subset of those offers.
23:20
I think you can overcome this by having another layer of contracts feed into this layer.
So my mix of 3 of the 4 currencies, it could be defined by a single currency from some other contract.
I could make a single offer to sell this other currency.
11 August 2020
Z
01:40
Zack
How is this supposed to look in the light node?

Lets say I make a trade offer to use my VEO to buy stablecoins.
So that means Bob, he has 2 choices for how he could match my offer.
1) could potentially sell some stablecoins to me for my veo. a veo <> stablecoin swap.
2) Or, Bob also has the opportunity to transform some of his veo into long-veo. So in this case my veo transform into stablecoins, and his veo are transforming into long-veo, which are the other side of the contract.

From my perspective, it doesn't matter which one of these things happens.
But Bob might care. He needs an interface that makes it clear what his options are.
01:44
I guess Bob could also do a mixture of (1) and (2).
MF
01:44
Mr Flintstone
two different buttons for accepting swap offers i suppose. one for selling a synthetic you already have, one for creating a synthetic and selling it immediately
Z
01:44
Zack
maybe I want to buy 3 units of stablecoins, but he only has 2.
So he could sell 2 stablecoins, and buy 1 long-veo to finish off my order
MF
01:45
Mr Flintstone
but probably we should keep it simple for now, and only program the UI for things that arent really edge cases
Z
01:45
Zack
maybe it can check if you have stablecoin, and only show a button if you have them to sell
MF
01:45
Mr Flintstone
yeah
01:46
Creating synthetic assets can be its own interface as well
Z
01:47
Zack
In reply to this message
you mean the "subcurrency set buy" tool?
01:47
in contracts.html
01:47
or something from the oracle page?
MF
01:50
Mr Flintstone
let me take a look
Z
01:51
Zack
the combiner tool automatically combines as much subcurrency as it can back into the source currency for that contract.
the subcurrency-set-buy tool lets you buy or sell a complete set in whatever amount you want
01:52
maybe you mean the swap-offer tool? for making offers to swap kinds of currencies?
MF
01:53
Mr Flintstone
is contracts.html running on any servers right now?
Z
01:53
Zack
no. it isn't whitelisted on the full nodes yet
01:53
you can open it in a browser by double clicking the file
MF
01:54
Mr Flintstone
yeah, i can take a look later, not at a computer for a minute
Z
01:54
Zack
and if you run it in "test" mode, it will connect to a full node on the same computer running in test mode
01:54
maybe I can get a screenshot
MF
01:54
Mr Flintstone
In reply to this message
a “complete set” meaning you own all subcurrencies related to some contract?
01:56
In reply to this message
right. it is financially identical to the source currency
MF
01:56
Mr Flintstone
nice
02:01
so im thinking for creating synthetic assets UX, instead of taking contract ID as an input, it assumes you are creating some stablecoin and takes ticker (i.e. BTC) and maturity date as an input.
Z
02:02
Zack
I need to write the new scalar contract still
MF
02:02
Mr Flintstone
yeah
Z
02:02
Zack
and the javascript interface for it
MF
02:06
Mr Flintstone
In reply to this message
this tool is pretty close to the ethereum project synthetix, except you are free to create and trade any synth you want, but there is a maturity date
02:07
once you transfer the synthetic asset you are creating a “debt” that must be repaid to free your veo and get it back. to use their parlance
EA
02:32
Eric Arsenault
I also think we should use their terms, it's pretty standard and it'll help people understand
MF
02:32
Mr Flintstone
agreed
Deleted joined group by link from Group
EA
02:42
Eric Arsenault
I think it makes sense to have an interface to create your synthetics, then an interface to accept / place trades (and not mix them, for now)
Z
02:44
Zack
In reply to this message
So, displaying the same trades on 2 different charts, in different formats
EA
02:45
Eric Arsenault
No, I guess there would only be one trade displayed for the VEO <> stablecoin
02:46
And someone who has VEO would need to go to a "create synthetics" part of the website where they would trade their VEO for long VEO + stablecoin
02:47
?
MF
02:53
Mr Flintstone
In reply to this message
I think he means like, one page for creation & seeing what “debt” you have and one separate page for trading
02:55
debt meaning, this page would show what subcurrencies are missing from the complete set. rather than showing what subcurrencies you have (which would be in the wallet)
julien invited julien
Z
05:09
Zack
I rewrote the tests not to use pair_buy
05:13
I also got rid of team_buy from the tests
Z
06:00
Zack
I removed the pair-buy stuff from the light node.
I added an interface to the light node for creating new binary derivative type smart contracts.
Deleted invited Deleted Account
Deleted invited Deleted Account
Deleted invited Deleted Account
T
11:13
Topab
How is this possible? Are they doing arbitrage? https://twitter.com/ceterispar1bus/status/1292886819084918787?s=19
11:14
Will people be doing the same in Amoveo?
MF
11:25
Mr Flintstone
i think multi-tx allows for a similar type of atomicity but i hope markets are not that inefficient on amoveo
11:26
the only reason this was possible is because this person was able to buy a dollar with 90 cents
11:30
I guess if people are creating synthetic amoveo dollars from their veo and want to sell the dollars for veo on chain so they can get leverage to the price of veo, the price of the synthetic dollar might get low enough to where you can buy it for 5% off face value and wait like a month for it to mature or something, which is pretty good apr.
11:37
one interesting thing here is that i think the pull to par carry is denominated in the synthetic asset? so if instead of usd stablecoins at a discount there was a gold stablecoin at a discount, then your APR is in gold
T
14:26
Topab
All this you say sounds very interesting! Pity I don't grasp much of it. One of the reasons I follow and support Amoveo is to learn all this. Hard to get there but step by step
Mitchell Amador Kuzzel | Immunefi invited Mitchell Amador Kuzzel | Immunefi
MK
18:39
Mitchell Amador Kuzzel | Immunefi
been a while
18:39
still hodling
18:39
how has Amoveo progressed in the past year
Z
18:58
Zack
In reply to this message
We wasted a lot of time on scaling tech that didn't work out.
The light node got better.
Now you can bet on oracles that do not yet exist on-chain. the oracle only needs to be put on-chain if it is needed to enforce a contract.

Here is the new plan for enforcing contracts:
https://github.com/zack-bitcoin/amoveo-docs/blob/master/design/smart_contracts.md
MK
19:14
Mitchell Amador Kuzzel | Immunefi
Thanks Zack
Z
20:04
Zack
In reply to this message
For now I am only having one button, and the way it works is that it will sell as many of your tokens as it can, and it only buys more to sell if you run out.

So like, if there is a contract with 2 types A and B, and veo is the source, and you have 60 units of A, and someone offers to buy 100 units of A, and you attempt to match their trade, then you first sell your 60 units, then you use veo to buy 40 units of A and 40 units of B, then you can sell these additional 40 units of A as well. so you end up losing your 60 units of A, and you lose 40 units of veo, and you gain 40 units of B, as well as whatever they paid you in exchange for the 100 units of A.
idk if that makes sense.
m
20:29
mm
What's up with VEO? How is UI evolving? When moon (jk)?
Z
20:30
Zack
@ecneladis look at what M asked 2 hours ago. basically the same.
you can download the UI and open it with your browser. https://github.com/zack-bitcoin/light-node-amoveo
m
20:30
mm
more screenshots, more roadmap, ...
people are lazy by nature
20:31
current 3M market cap is something that has easily potential for 10-100x
Z
20:31
Zack
The hard update will probably be ready in another week or two.
Then we need a 2 week delay to activate it.
Then we can see if the subcurrency update is sufficient to gain traction.
20:31
if not, we do another pivot
m
20:31
mm
I'm willing to invest resources, but I'd love to see where it's going
20:32
by invest I mean development by myself or hiring people to do some UI stuff, marketing etc
I
20:33
Instinct
In reply to this message
Search “subcurrency” in this chat, you’ll see what zack & mr flintstone are working on
Z
20:33
Zack
maybe you can make a smart contract to at least partially compensate yourself for that
m
20:33
mm
unfortunatelly node is in esoteric (fairly) erlang and it's harder to hire devs for this
Z
20:33
Zack
we want to have dominant assurance contracts to pay people to work on amoveo
m
20:33
mm
In reply to this message
If VEO can make 10-100x or even 1000x I'm fine with just appreciation of my investment
Z
20:33
Zack
In reply to this message
you can learn erlang faster than you can learn a library in some other languages. it is very small.
20:34
it isn't as fast in the machine as the other blockchain languages. But it is very easy to learn and to read and edit.
m
20:34
mm
but pararell/funcional concepts are more obscure for most devs, and you won't find erlang devs by randomly asking people on the street
Z
20:35
Zack
not knowing erlang shouldn't be a limitation
20:37
If you want to hire someone for to work on this, searching for an "erlang programmer" probably isn't the right strategy.
I am not sure what you want to build, but I bet they would be doing it in javascript.
m
20:39
mm
In reply to this message
whatever that makes VEO successfull and 100x increase in price
20:39
you tell me 🙂
Z
20:41
Zack
I don't memorize almost anything. I look up everything the erlang manual practically every time I do anything.

I don't think having spent more time writing erlang makes a difference. It is such a simple language anyone can learn quickly.
MF
20:47
Mr Flintstone
erlang isnt where most of the ux would be scripted anyways, would be in js & html
Z
20:47
Zack
yes
MF
20:51
Mr Flintstone
In reply to this message
you can see an mvp here using existing amoveo features
20:56
the idea is to enter a trade and simultaneously offer to sell your position for 99% of the total veo in the contract. so once the event happens, someone else will settle it early for you to make 1%, and you will get your winnings as soon as the event is resolved, without needing to do anything
20:58
one problem is that only the person who you made the trade with can settle early. but once there are subcurrencies, you are kind of tokenizing your position so you can sell it to anyone, so anyone can settle it early. another problem is that you need to bet in VEO, but once there are fungible and transferable stablecoins soon, betting in USD tokens is possible
m
21:02
mm
In reply to this message
You guys should start describjbg this on GitHub
baksuzz invited baksuzz
b
22:16
baksuzz
In reply to this message
generale, oce bit sta od projekta?
Š
22:16
Šea
Ja sam - 90%
22:16
Pa evo, ne znam
ŽM
22:17
Živojin Mirić
In reply to this message
biće, ja ti osobno obećajem
mx
22:18
mr x
english plz?
ŽM
22:18
Živojin Mirić
sry
b
22:18
baksuzz
hvala generale, kupujemo veceras
22:18
where can i buy guys
ŽM
22:18
Živojin Mirić
qtrade
b
22:19
baksuzz
tnx
ŽM
22:19
Živojin Mirić
JS
22:22
Jon Snow
In reply to this message
More like 1-2m market cap right now
ŽM
22:23
Živojin Mirić
In reply to this message
then x1000
MF
22:29
Mr Flintstone
In reply to this message
you mean like comment out the code? or in a readme type format
m
22:30
mm
no, describe roadmap items in github issues
MF
22:31
Mr Flintstone
makes sense
s
22:33
sanket
In reply to this message
are there similar markets right now?
JS
22:33
Jon Snow
In reply to this message
Some increased volume recently on qtrade
MF
22:34
Mr Flintstone
In reply to this message
what do you mean? If you hit the Create link at the top, you can create a trade and it will be posted to the Explore tab where it can be accepted etc
22:35
crypto options settle at Midnight GMT of the date specified
22:36
there arent any trades up right now. i think the last one was on ampleforth
22:40
they are set to expire in like 4 or 5 blocks, to reduce free option risk
Z
22:45
Zack
I was able to make a swap offer in the light node to buy some subcurrency.
Then I matched that offer using an account that didn't own any subcurrency to sell. the 2nd account, it did a multi-tx that simultaniously bought both kinds of shares, and sold one kind to the first person.
m
22:47
mm
In reply to this message
@zack_amoveo it will make project more available for new people, devs especially
22:47
or hire me as a CEO and I'll push you to do this, lol
MF
22:49
Mr Flintstone
it makes sense to have something that is more organized and granular than the current materials. it would definitely make it easier for a new dev to follow along
Z
22:49
Zack
In reply to this message
it is recursive.
So if you don't have a currency, but you do have a nth generation ancestor, then it automatically buys the currency you need to finish the trade.
MF
22:49
Mr Flintstone
while there are issues in the github, it is kind of hard to tie to the overall vision
JS
22:53
Jon Snow
In reply to this message
You can appoint yourself as a CEO here. No need to get Zack’s permission. A permissionless CEO per se
Z
22:58
Zack
In reply to this message
so now swaps work as pair buys.

I guess the next step is to make an api in the p2p server so that you can make a trade, and set up a second trade that only gets activated if the first one is matched.
12 August 2020
Z
20:57
Zack
I made it so we can put new-contract-tx inside of a multi-tx.
This way creating the smart contract and accepting a trade in it can be atomic.
So it isn't possible for the miners to let someone else pay to make the contract, and the miner steals your trade.
Z
22:39
Zack
I made it so you can simultaneously make a trade, and an offer to sell your winnings.
So if you win the bet, it automatically pays out to veo, and you don't have to think about it.
And it pays out as soon as the outcome is knowable, you don't have to wait for an oracle.
Like, as soon as the sporting event concludes.
MF
22:45
Mr Flintstone
is it easy to use subcurrencies instead of veo for this function?
Z
22:45
Zack
I got rid of the unused tx types. pair-buy and team buy.
MF
22:45
Mr Flintstone
like say someone wants to be making trades in usd tokens
Z
22:45
Zack
In reply to this message
it is a lot easier than the old method with state channels
22:45
In reply to this message
oh right
22:46
the "new contract" tool is currently assuming that you are making the contract in veo.
I can make everything subcurrency compatible next
MF
22:47
Mr Flintstone
great
Z
22:48
Zack
also when you make a tx to sell your winnings at the end, it is assuming that you want to sell your winnings for veo
22:49
I think all we really need is that you sell your winnings for the same currency that you originally had purchased in with.
We already support swapping between any pairs.
22:52
oh, I had set it up with veo as like, a "default" currency.
So if you make a swap where you are selling something and buying veo, it wont try to auto-sell winnings from that trade.
but if you are using veo to buy something, it does.

So maybe we need a way to set your default.
ŽM
22:52
Živojin Mirić
Is amoveo defi?
22:53
They use that term a lot lately but I see nothing new
Z
22:53
Zack
amoveo is a blockchain for financial derivatives. the most basic contracts in finance.
we were defi before "defi" was a word.
ŽM
22:53
Živojin Mirić
In reply to this message
And they pegged defi as a term to ETH
22:53
That's not fair
22:54
The term was widely used regarding blockchain in general in the past..
Z
22:55
Zack
In reply to this message
im thinking it doesn't make sense to use anything other than veo as a default until we have scalar contracts and stablecoins.
22:56
so I think ill write the scalar smart contract stuff first
13 August 2020
MF
00:06
Mr Flintstone
yeah, that makes sense
Deleted invited Deleted Account
J
07:31
Josh
This DeFi is turning into a big market: https://twitter.com/balajis/status/1293683019924926466?s=20
07:32
"After years of development, dexes are finally starting to move real volume. Looks like they're collectively at 10% of Binance in 24 hours ($420M vs $4B)."
MF
07:41
Mr Flintstone
looks like tragedy of the commons might be befalling yam, since they use voting and need to pass a governance proposal within a certain amount of time or the token blows up because of a bug. to pass it, they need a certain amount of yam locked up for voting, but to vote you lose out on uniswap rewards so the right thing to do is not vote? but it is pretty complicated so im not exactly sure if thats how it works
EA
07:44
Eric Arsenault
In reply to this message
Reference?
MF
07:44
Mr Flintstone
In reply to this message
there is a huge profit opportunity here for front running
07:46
i think probably similar to centralize exchanges in terms of front running, but the non custodial & frictionless nature of these is way better so id be surprised if volume didnt pass centralized exchanges eventually
07:48
i think probably will be able to do it, given that they just need 160k and looks like circulating supply is 2.6mn? Not really sure though
07:48
it is interesting to see these voting protocols try to handle crises though
MF
08:31
Mr Flintstone
now they are saying they will reward people who vote with future yams
Z
21:12
Zack
I think chalang might need a tool for converting from an integer in base 10 string format, into a normal integer that can be used for calculation.

Because we want to embed a number into the string of the oracle text.
21:13
Maybe I can write a function for conversion in chalang.
奥利奥 invited 奥利奥
Bilal caffe invited Bilal caffe
B
22:42
Bilal caffe
Admin
Z
22:48
Zack
I wrote a number to string converter in chalang.
Z
23:22
Zack
looks like about 500 bytes for the first version of the new scalar contract
23:25
I guess ill set it up with 2 main subcurrencies for the stablecoin and the long-veo. and I will have a 3rd subcurrency that takes 100% of the value in the case that no oracle can be created to resolve the contract before some expiration.
14 August 2020
MF
01:26
Mr Flintstone
For the scalar, is it set up so it will take the average price of true oracles?
01:26
so for a boundary it will not have issues
Z
01:27
Zack
It uses the same nonce for any valid oracle. So the first valid oracle used to settle the contract has control
EA
02:07
Eric Arsenault
@zack_amoveo these guys have a nice way to present options: https://www.hegic.co/
Z
02:22
Zack
https://twitter.com/zack_bitcoin/status/1158650283205021696?s=19
This tweet started getting a lot of attention right now
02:25
I think they are all from brasil
Z
02:58
Zack
oh, I think it was fake views.
Someone is trying to sell me fake views, and it was a sample.
EA
03:04
Eric Arsenault
😂 got ya good
JS
04:15
Jon Snow
In reply to this message
Pretty neat UI. Hope Amoveo will have similar one
04:23
@denis_voskvitsov is exantech going to support subcurrency update once it is released and start building an UI for it in amoveowallet?
DV
04:24
Denis Voskvitsov
well, I think it's possible under DAC funded by community.
JS
04:29
Jon Snow
Great, cannot wait for the subcurrency release
S
04:33
Sebsebzen
Let me know when DAC is out :)
H
04:42
Hoshi
In reply to this message
An awareness campaign would be great! A couple of interviews with Zack like the one he did with CryptoCholics
04:42
I posted this tweet today and Brad liked it
04:43
@zack_amoveo would you be up for an interview with Brad Laurie?
Š
04:43
Šea
In reply to this message
i'm expecting a short answer here
ŽM
04:44
Živojin Mirić
❤️
I
05:02
Instinct
In reply to this message
Nice
I
06:12
Instinct
In reply to this message
His brother
BJ
08:25
Bear Jackson
Hello, I can't find my VEO... I had it all on amoveo.exchange, now I can't find it on a1 exchange...
BJ
08:41
Bear Jackson
h
JS
09:15
Jon Snow
Is a1 exchange still in operation?
JS
09:35
Jon Snow
In reply to this message
There is a chance that you won’t get your veo back from a1 exchange. Don’t think they are responding to any support questions anymore based on discord conversations.
BJ
10:56
Bear Jackson
Damn really
10:56
So what happened
JS
11:40
Jon Snow
They have a telegram chat
11:40
Maybe you can ask them
11:41
T
12:22
Topab
In reply to this message
Will be happy to contribute too!
S
13:20
Sy
That lesson is as old as btc, don't park your coins on exchanges...
Elijah invited Elijah
Deleted invited Deleted Account
Z
19:44
Zack
In reply to this message
in the last 24 hours:
120+ upvotes
10+ shares
8 people besides me viewed the page.
haha
It makes me wonder how fake a lot of these supposedly popular projects are.

In the case of ICOs with anonymous investment, they can start circulating their funds to re-invest into themselves many times, and make it look like a lot of bitcoin were raised, when in reality it was the same bitcoin over and over hundreds of times. So it is cheap to fake raising a lot of money.

It is cheap to make social media accounts look popular.
Z
21:38
Zack
https://github.com/zack-bitcoin/amoveo/blob/subcurrency/apps/amoveo_core/src/consensus/txs/test_txs.erl#L2573
I wrote the scalar oracle smart contract, and it has this passing test.
21:42
looks like about 450 bytes for the smart contract
21:42
I think a lot of that is the oracle question
21:42
we could probably embed a hash of the question instead
21:43
we could also make it shorter if chalang could convert integers to strings natively
21:55
I think the old version was using 2783 bytes, and we needed to publish like 10 oracles.
The new version is much better.
21:56
also with the old version, every user potentially needed to publish the contract.
With the new version each contract can only need to be published at most once, no matter how many people are participating.
Z
22:27
Zack
next up ill embed the contract in javascript, and write some tools for proposing, accepting, and enforcing scalar bets.
Z
22:54
Zack
then we can integrate it into the derivatives marketplace
15 August 2020
Deleted joined group by link from Group
ŽM
00:04
Živojin Mirić
well hello there
Nadal invited Nadal
Deleted invited Deleted Account
C
10:53
Callum Wright
In reply to this message
you can certainly pay for view yes and not that expensive, that's pretty much problem with most social media
10:53
which end up being a rat race because everyone has to follow or get left behind metrics wise
Deleted invited Deleted Account
Z
19:54
Zack
https://github.com/zack-bitcoin/amoveo/blob/subcurrency/apps/amoveo_core/priv/scalar.fs
I moved the scalar derivative contract to it's own file and cleaned it up.
Z
20:12
Zack
haha, the scalar contract is shorter than the binary one now.
20:23
I cleaned up the binary contract and moved it to it's own file.
binary is down to 163 bytes now. scalar at 399.
Z
20:44
Zack
Now 144 and 389.
I updated the chalang forth compiler to be a little more efficient.
20:58
the bigger difference is that the new scalar contract doesn't need merkle proofs of 10 different oracles
Z
21:30
Zack
https://github.com/zack-bitcoin/light-node-amoveo/blob/master/src/js/scalar_derivative.js
I made this module for building the scalar derivatives contracts in javascript.
21:33
the p2p derivatives server keeps track of possible oracles for the binary derivatives.
I am thinking we need something similar, but for keeping track of {ticker-question, price-range, oracle-start-height} triples.
Each scalar derivative has a triple like this, and you need this info to be able to build the oracle and enforce the outcome.
It works like the oracle-question from the binary derivative.
Deleted invited Deleted Account
MF
23:11
Mr Flintstone
maybe an additional optional entry for resolution source?
Z
23:12
Zack
That's in the ticker question
23:12
It is is a substring of the Oracle question
23:12
The rest is hard coded
MF
23:21
Mr Flintstone
Cool
16 August 2020
Z
03:28
Zack
oh right. it seems like the batching mechanism was dependent on the server locking up double liquidity
03:28
so maybe we need some other strategy for fair off-chain markets.
03:29
or to modify it somehow
Deleted joined group by link from Group
Deleted invited Deleted Account
Cryptographic invited Cryptographic
Ak invited Ak
Milty (WILL NEVER DM YOU) invited Milty (WILL NEVER DM YOU)
M
22:41
Milty (WILL NEVER DM YOU)
you solved the oracle problem?
I
22:47
Instinct
In reply to this message
Yep
M
22:48
Milty (WILL NEVER DM YOU)
In reply to this message
Based. ChainLink will go to zero.
N
22:52
NM$L
is veo alive?
22:53
price doesn't go up in the bull market.
Z
22:54
Zack
Alive
MF
22:56
Mr Flintstone
In reply to this message
we think amoveo’s solution to the oracle problem works. meaning it doesnt matter how much money is at stake, amoveo will report the correct outcome. and not only that, the oracle doesnt charge fees to people betting on it
J
23:48
Josh
In reply to this message
Can the server just lock up double liquidity for the duration of the batch betting? If it's a short enough time period it might not be so bad.
17 August 2020
Z
00:00
Zack
In reply to this message
Yes, that is what I have been looking into
J
00:32
Josh
Cool
JS
02:27
Jon Snow
I know we are not supposed to talk about price here but oh boy who is doing a VEO market buying spree on qtrade?!
Kaium Badsha invited Kaium Badsha
Mateusz invited Mateusz
Deleted invited Deleted Account
K
04:43
K
In reply to this message
I made a price discussion channel. @veoprice
Jacob invited Jacob
J
04:52
Jacob
good evening
Z
04:52
Zack
In reply to this message
We already have one on discord
K
05:18
K
In reply to this message
Nothing on telegram though. A bunch of people dont even use discord
05:18
I can give you ownership of veoprice
Dexter invited Dexter
D
06:26
Dexter
u guys buy on qtrade?
EA
06:28
Eric Arsenault
yup
JS
06:28
Jon Snow
Yeah
D
06:29
Dexter
In reply to this message
what do u know
06:29
having a look at the project
JS
06:30
Jon Snow
In reply to this message
What do you mean
D
06:35
Dexter
In reply to this message
it was a joke because of ur username
D
06:37
Deleted Account
In reply to this message
😂
JS
06:38
Jon Snow
In reply to this message
Haha, as my username indicates, I know nothing.
D
06:38
Dexter
In reply to this message
you also dont happen to know the current marketcap? hehehe
JS
06:39
Jon Snow
In reply to this message
I know it’s low
D
06:39
Dexter
In reply to this message
what is circ? any idea?
JS
06:41
Jon Snow
In reply to this message
06:41
73.7 k veo so far
N
07:44
NM$L
no one buy veo
07:44
Is sy there
Woah invited Woah
ZatochiNakamoto invited ZatochiNakamoto
C
15:43
Callum Wright
In reply to this message
not me
15:43
(I'm Maestro)
Deleted invited Deleted Account
Van Gogh invited Van Gogh
Deleted invited Deleted Account
B
17:00
Beer
it feels like the time where this TG is a conversation between zack and flintstone is soon ending : - (
17:00
> : - )
ŽM
17:07
Živojin Mirić
This is now phase 3
17:07
welcome!
17:07
success is guaranteed
Š
17:07
Šea
did marketing work out?
17:08
should we push more or that's enough @zack_amoveo
ŽM
17:10
Živojin Mirić
this was a proof of concept for use of marketing
17:10
we 101ed this congratz
Z
17:11
Zack
In reply to this message
not guaranteed. This is a high risk project.
ŽM
17:12
Živojin Mirić
I meant for investors, not for the final goal of Amoveo, sry, this should not be discussed in this holy chat
Z
17:12
Zack
qtrade is having a lot of activity recently because of some other coin listed there.
17:13
probably Amoveo is getting spill-over attention from that.
ŽM
17:14
Živojin Mirić
let's not underestimate latest marketing efforts
B
17:23
Ben
qtrade getting run-over by kulupu folks, veo rise is a side effect since the look at all the cool Kids qtrade has listed.
Z
19:13
Zack
I got multi-tx working with new_oracle and oracle_bet txs together, even if they are for the same oracle.
This is useful to prevent miners from front running your initial liquidity in a market.
Master invited Master
M
19:50
Master
I'm The 1000th member
Z
19:51
Zack
yeah, along with dozens of others.
we have been hovering around 1000 for months.
M
19:51
Master
What's the supply
Z
19:51
Zack
73k veo
M
19:51
Master
K
[
19:57
[Riki]
In reply to this message
congratulations. dont forget to tell that to women at the bar.
Z
20:48
Zack
I had to do some updates to the full node because I changed how the chalang compiler works in a dependency
Z
21:29
Zack
I updated multi_tx to support all the tx types, and added tests for them all.
21:32
we mostly needed it for oracle_new + oracle_bet combinations. so the server wont steal your liquidity.
21:32
especially for governance oracles
s
21:33
sanket
that's good to hear.
Z
21:54
Zack
next im going to try teaching the derivatives server how to store scalar derivatives, and the light node how to make and accept them.
EA
23:21
Eric Arsenault
In know the main use case for Amoveo is derivatives, but do you think Amoveo would also be useful to provide price feeds? Seems like that’s what most DeFi projects are looking for from Chainlink at this point.
Z
23:24
Zack
1) secure price feeds are not possible.
2) price feeds are not useful for any interesting financial tools.
T
23:30
Topab
Isn't the oracle a price feed?
Z
23:31
Zack
no.
Amoveo's oracle is used to move some publicly available common knowledge onto the blockchain. Enforcing one bit of data can take over a week of time. it is not a live price feed.
23:31
each question to the oracle is only one bit
23:32
a yes/no question
MF
23:32
Mr Flintstone
typically a contract would be settled before using the oracle to enforce it. it is like settling before going to court
Z
23:33
Zack
The whole idea of a "price feed" doesn't make sense anyway.
What we really want is to have a fair market, so you can trade between currencies at the current market price.

The idea that there is some price other than the market price, that doesn't make any sense.
18 August 2020
Z
01:04
Zack
Thinking about the single price batches.
First you make a state channel with the server.
You both sign some evidence so you can lock-in your trade for the next batch.
If your trade is unmatched, then the channel is unchanged it has Veo on both sides. If it was matched, now your channel has stablecoin on one side and long-veo on the other.

So if your bet is unmatched, you don't need to post anything on-chain. The channel is still there, available to be used to bet in the same market again, or any other market.

So unmatched trades can be free from any on-chain cost, and we can have single price batches at the same time.
01:05
It seems like we can have multiple open trade offers in the same channel, as long as they are all trades in the same order book.
01:06
So like, you can offer to buy usd stablecoin at 2 different prices in Veo. 2 different limit orders in one channel.

But you couldn't have an offer for usd and an offer for gold in the same channel at the same time.
Deleted invited Deleted Account
Deleted invited Deleted Account
J
13:47
JOHNwick3's dog
guys, I said to keep Amoveo quiet two weeks ago... LOL
13:48
Hey Zack, What are your thoughts on Ampleforth. I'm having a hard time figuring it out. seems to be some type of experimental stable coin hybrid with some type of oracle system.
13:49
The narrative is for it to be a decentralized stable coin.. but.. lol its crazy!
ŽM
16:29
Živojin Mirić
it is most certainly fundamentally flawed, don't have to even look at it
Martijn Eerens invited Martijn Eerens
Ste H invited Ste H
SH
20:19
Ste H
why's it pumping
Z
20:20
Zack
there is a price discussion channel in discord
K
20:28
K
In reply to this message
You need to make the telegram 1 official too
20:28
I'll give you ownership of it
Z
20:29
Zack
i moderate a lot of stuff already
K
20:29
K
In reply to this message
I can moderate?
Z
20:29
Zack
I would rather they be directed to the discord price discussion channel
SH
20:40
Ste H
I would rather pay less for the coin to be honest - will monitor thanks though
Z
22:22
Zack
I started writing scalar oracle stuff into the light node, and I found a bug in multi-tx that have new_oracle and new_bet in the same tx. so I wrote a fix.
ŽM
22:22
Živojin Mirić
that's great news Zack
19 August 2020
Deleted invited Deleted Account
K
05:11
K
@zack_amoveo is it okay if I point people towards my price discussion group if I label it explicitly as being un-official?
05:13
Deleted Account
give the people what they want @zack_amoveo. but mandate that as tribute price group must create one solid meme per week and post it in the meme group
05:13
otherwise they're useless
Jpp1972 invited Jpp1972
ŽM
05:37
Živojin Mirić
In reply to this message
+1
EA
05:40
Eric Arsenault
lol
05:40
amoveo should really step up its meme game
05:41
hard to do that here... do we have a forum for it?
Z
05:42
Zack
There is an amoveo meme group @amoveo_memes
Arm H invited Arm H
JS
05:45
Jon Snow
Haha we should pin this meme chat group in pinned message lol
Igor invited Igor
EA
05:50
Eric Arsenault
yes please
jackone invited jackone
M
11:01
Mia
In reply to this message
🔥
C
11:30
Callum Wright
In reply to this message
It plays with the supply rebase for stability. But market is not that efficient and equally distributed for it to actually works as intended in a macro scale
11:31
also was so distorted with VC investments
Big Texan invited Big Texan
Z
20:36
Zack
I got scalar derivative contracts creation and resolution working in the light node
20:37
I also changed the full node to disallow contract_evidence_tx inside of multi_tx.
this tx is where we run smart contracts, so it was a denial of service vulnerability to full nodes.
Z
23:01
Zack
I updated the derivatives server so now it knows about scalar derivatives contracts.
23:01
it should be possible to trade stablecoins from the light node, but I haven't tested it extensively.
23:02
I guess next is contracts priced in subcurrencies from other contracts?
You guys want to use stablecoins to bet on stuff right?
23:06
oh, we need a tool for withdrawing your winnings from a stablecoin contract.
EA
23:27
Eric Arsenault
In reply to this message
People will probably want to trade in USD yeah
23:28
Zack are you familiar with the AMMs gaining traction on Ethereum?
Z
23:29
Zack
ive looked into ethereum automatic market makers before. is there something in particular you think I should review?
EA
23:30
Eric Arsenault
Not specifically, but I do think it’s interesting that these pools are having a lot more traction than P2P
23:31
I was wondering if we could use these sort of strategies in Amoveo
Z
23:33
Zack
there is a p2p amm? that doesn't make any sense.
EA
23:33
Eric Arsenault
No, I mean AMM vs P2P
Z
23:37
Zack
I don't see those as alternatives to each other. they are different tools.
23:40
on-chain market makers are a bad strategy because they are vulnerable to front running from the miners.
single-price batches is the economically sound way to have markets, but it isn't possible to enforce this on-chain.
So our plan is to have single price batches enforced in channels.

People could choose to participate as market makers in these markets, it is often a profitable strategy.

People could write software to automatically participate as a market maker in these markets. then we would have automatic market makers that are trustlessly enforced.
20 August 2020
EA
01:58
Eric Arsenault
Seems like the killer use case is an AMM built on top of Amoveo,
Z
02:30
Zack
I think that what people really want is a trading bot that lives on-chain, so they don't need to have their private key online, and they can profit.

The kind of trading bot that profits right now is a market maker, because there is a lot of volatility.
MF
03:28
Mr Flintstone
ammoveo
Deleted joined group by link from Group
mx
04:35
mr x
In reply to this message
thats the spirit
EA
04:50
Eric Arsenault
LOL
04:51
that will pump
MF
05:15
Mr Flintstone
not sure if the fee to liquidity providers should be higher or lower than uniswap
Z
05:17
Zack
I'm pretty sure the fees from slippage will be so much higher, that the base fee doesn't matter
MF
05:17
Mr Flintstone
you can allow a max slippage
Z
05:17
Zack
I still don't totally understand how much extra to charge if there are multiple trades in one block
MF
05:18
Mr Flintstone
wouldnt it just be sum of trade size * fee
Z
05:20
Zack
I think we have to first process all the trades in one direction.
Then reset the market to initial conditions.
Then we process all the trades in the second direction.

So if there are a lot of trades in both directions, the spread can get big.
05:20
But maybe there is a way to match trades in the middle, and the price doesn't need to go that far
MF
05:21
Mr Flintstone
like net it out
JS
06:29
Jon Snow
In reply to this message
Need to stimulate some animal spirit.
Z
17:24
Zack
The way I see it, as long as during a single block, all the sell orders are processed at prices equal to or worse than the starting price, and all the buy orders are processed at prices equal to or worse than the starting price, then it is impossible to earn arbitrage profit by reordering trades in a block and inserting your own trades in between.
17:25
so that means we can let the price move up and down normally, and when a trade is processed it pays whichever is worse, the starting price for that block, or the current price.
KL
17:25
Karlis L
you cannot arbitrage, but you can "get better price" by placing your own first
Z
17:26
Zack
right
KL
17:28
Karlis L
and...then you can place your BUY order first to take all the fair priced Sell trades, and stick in your own Sell trade far away, against which other Buy orders will execute..
17:29
i am not sure if that is technologically possible )) but you can create an arbitrage if thats possible
Z
17:30
Zack
im pretty sure if you attempt this, it works like greifing.
The miner can make people pay a higher price, up to the limit order price they had agreed to pay. but the miner ends up paying a fee equal to the extra cost that they imposed on a user.
These fees all go to holders of the liquidity shares.
KL
17:39
Karlis L
doesn't it depend on the limit prices and amounts? if the limit price is really deep "in-to-the-money" and the amount is very large, then fees would not cover the possible upside of abusing this limit order
A
18:28
Alfie
Hi guys. Pardon my intrusion. So for wallets, is this one legit? I found it while digging through the official website. https://myveowallet.com/create/

Thanks!
Alaa S invited Alaa S
Z
18:35
Zack
In reply to this message
there is no official website.
This is the one I maintain https://github.com/zack-bitcoin/amoveo

This is the wallet I maintain https://github.com/zack-bitcoin/light-node-amoveo
It has lots of features and is up to date
A
18:36
Alfie
Thanks Zack! 😊
Z
19:13
Zack
For on chain markets there is an idea for front running security. The idea is that buys and sells both pay worse prices than the starting price for that block, so a miner can't reorder trades inside a block to get arbitrage profit.

I think if a mining pool is sure to get 2 blocks in a row, this frontrunning security does not work. They can have the 2 wrapper txs in either block.

If a mining pool has H% of the hashpower, they can have H% confidence that they will find the next block and complete the attack.

The bigger problem is that if mining pools make security deposits and cooperate together, they can act as one giant mining pool for this attack, and act 100% successfully at front running.

I think the equilibrium case is that zero fees go to liquidity providers, and miners take it all.

This tool isn't secure against bribery and collusion.
Z
19:30
Zack
we don't necessarily know which mining pool mined a block. So even if a pool paid security deposits to join the attack, they could still mine blocks that don't conform to the attack, if they wanted to.

is it more profitable to participate in the attack or not?
19:35
The way I see it, the first miner would do the first half of the wrapper to push the trade to the limit price.
Then the first miner would make a swap offer, to sell the tokens they are buying. the second miner will take this offer and create the second half of the wrapper for guaranteed profits.

It is a game like this.
There is a slice of cake.
I cut it and claim a side.
You can choose to either:
1) eat your side of the cake while I eat my side.
2) to throw both sides away.

I think in this game, even if I only offer you a very small slice of cake, it is still in your interest to eat it instead of throwing it away. Since it is free cake.
So I feel like the first miner, in the equilibrium case, they get to keep almost all the frontrunnning profits.
A small amount of the profits goes to the second miner.
And practically none go to the liquidity holders.
19:35
It kind of reminds me of the classic logic problem with the rational pirates deciding how to divide up the gold.
19:44
Maybe we shouldn't fight it. We should clearly and directly give this extra money to the miners, since they can take it anyway.
In the long run, this is like part of the block reward. We can have a smaller block reward because of this.

So then, just giving it to miners is economically identical to deleting the extra money.

And deleting the extra money, that is economically identical to distributing it to all holders of VEO.

So basically, VEO would be the liquidity token for all these on-chain markets.
19:46
So there is an on-chain price of the market.
And each trade has a limit price written on it.
The trade is only valid if it is for a limit price higher than the current on-chain price.

But you don't pay the on-chain price, you always pay the limit price.
19:48
you receive tokens that are only worth the on-chain price.
The extra tokens you paid above the normal price, they all go to the miner of that block.
19:49
I wonder how the mining pools would feel about being paid a bunch of random subcurrencies when they include market-trades.
Z
20:22
Zack
I made interfaces in the light node for generating scalar and binary contract ids.
you need to be able to generate ids to be able to make swap offers for contracts that do not yet exist.
Emmanuel invited Emmanuel
Z
22:32
Zack
wouldn't specialized market makers who can stay online and rapidly adjust strategy undercut everyone using an AMM?
21 August 2020
EA
00:20
Eric Arsenault
In reply to this message
maybe in the long run, but AMMs seem to be winning right now... likely due to ease of use + liquidity
00:22
Many people don't want to spend time being a MM. Providing liquidity to an AMM is a lot easier
JS
02:20
Jon Snow
In reply to this message
If they do a better and more efficient job at market making, it is fair that they earn what they make by their MM skills.
ShadowFax invited ShadowFax
JS
06:27
Jon Snow
In reply to this message
Also, I don’t think people would expect AMM to be the be-all and end-all MM activity for Amoveo, but it does provide a good basic access and it sets up the benchmark for other MM activities.
MF
06:55
Mr Flintstone
probably having something like uniswap for trading subcurrencies will make it easier to start getting liquidity onto amoveo
06:56
like a veo usd pool, or usd eur etc
EA
06:56
Eric Arsenault
yeah, 100%
06:57
use futarchy to determine if we should have liquidity incentives :O
MF
06:57
Mr Flintstone
haha that would be interesting
06:58
you could lock it as well for some time
06:58
so you cant just dump immediately
Z
07:12
Zack
I was thinking trading fees would be a governance variable
MF
07:12
Mr Flintstone
yeah
07:14
eric was talking about a popular strategy on ethereum where tokens are issued to pay people who are providing liquidity so they can grow assets in the protocol
07:16
so for example if veo was issued to people providing on chain liquidity of certain whitelisted currencies
Z
07:48
Zack
If the trades are happening slow enough and all the pools can agree on the order, I think we can actually get this pretty efficient.
So people are paying near to the current price.
EA
07:59
Eric Arsenault
This would be on trend, and should help with adoption once we have a product that’s live / has decent usability
08:11
Would be fun to work on what an AMM would look like on VEO
08:12
Maybe it’s just the uniswap model?
MF
08:12
Mr Flintstone
i think so
EA
08:13
Eric Arsenault
Another option is maybe this sort of thing, although it’s more complex
08:14
A single pool for all trades
08:15
But yeah, I guess uniswap would be fine
s
17:31
sanket
In reply to this message
yeah this would be interesting. but how will it work?
17:32
AMM is really a nice way to attract liquidity
C
18:43
Callum Wright
would AMM works for a prediction market?
18:43
haven't seen anyone tried it
18:51
actually I'm wrong, Omen and PolyMarket have a varation of it
Z
18:52
Zack
Truthcoin had an amm in its design in 2013.
I wrote an amm into augur's MVP in 2014.
18:55
Maybe i programmed the first blockchain amm.
J
23:25
Jeans
Chinese like Amoveo
Z
23:28
Zack
everyone likes amoveo
MF
23:28
Mr Flintstone
Disclaimer: Author is long on every token mentioned in this article.”
23:28
lol
Z
23:29
Zack
oh, I thought it was spam
23:29
here it is back
23:29
next choices could include amoveo?
im thinking this is spam again
23:36
from the light node I defined a scalar currency, like a stablecoin. I didn't create it on-chain.
Then I defined a binary contract priced in the stablecoin. like, betting on the election. I didn't create that contract on-chain.

I wrote a swap-offer to buy some shares in the binary contract. Like useing stablecoin to bet that trump will lose.
I didn't publish this on-chain. I put it on the explorer.

Then I switched to my second account.

My second account accepted the trade. This simultaniously created the stablecoin contract, purchased coins in it, created the binary political bet, used the stablecoins to get a stake in the political bet, and then swapped the political-bet coins for veo from acc1.

All from the light node.
23:38
a lot of different things happen in that one tx. and it is only 2 signatures.
s
23:39
sanket
Zack could you explain it how it can be used? like an eli5 example of how a user can use it?
Z
23:40
Zack
betting on sports and politics is popular.
23:41
people want to have bets priced in stablecoins.
23:41
you can do this entire process from the light node now.
23:41
keeping the contracts off-chain until the last moment is nice because it means unmatched offers are free to make.
If no one accepts your trade, then there is nothing to enforce, so you never need to create the contracts on-chain.
23:42
long-term bets in thin markets might need customized stablecoin contracts
23:43
if you don't make the bet, then there is no reason to make the custom stablecoin either
23:44
in order to decrease the free-option problem, we want to be able to refresh our bet offers with different prices quickly.
So that means we want it to be cheap to make offers that don't get matched.
22 August 2020
Z
00:02
Zack
We have got to activate the sub-currency hard update soon.
it seems ready now.
And then we can start building the AMM stuff.
00:03
Is there any other tests you guys would want me to write before we active the subcurrency stuff?
I
00:11
Instinct
In reply to this message
😂
MF
00:22
Mr Flintstone
In reply to this message
do these tests sign 99% swap offers for settlement?
Z
00:23
Zack
In reply to this message
No.
That is inside the light node and involves the derivative server api.
Not the full node.
00:24
But that system does work. You can try it out if you run a full node in test mode and a derivative server on the same machine
00:24
And you open the light node by downloading from github and opening it in your browser, not the one served by the full node
00:25
I guess I should set up a testnet on one server and we can try it out for a 24 hour period
00:26
I need to get the light node to sync past block 12 on a test node
MF
00:28
Mr Flintstone
I think the only consensus dependency is the swap working correctly, everything else is configuration in erlang or js for the trade server and light node
00:28
so if those tests are working then its probably fine
00:28
In reply to this message
the swapping on chain
jon johhny invited jon johhny
s
00:55
sanket
In reply to this message
No I guess you mentioned most of the things
Z
01:15
Zack
In reply to this message
Deleted joined group by link from Group
JS
02:55
Jon Snow
I’m always curious. @zack_amoveo how many hours do you work on Amoveo each week? What do you do when you are not working on Amoveo?
Z
05:47
Zack
im doing a test sync to see if the subcurrency update broke anything
05:47
I guess we should activate it soon
05:49
its such a big update, something is bound to go wrong.
Even though we are taking a lot of precautions.
JS
05:57
Jon Snow
In reply to this message
Yeah, safety first
ŽM
06:27
Živojin Mirić
How can I bet on "NK Trešnjevka" to win their first game in 3rd league?
06:27
Please explain step by step
06:27
MF
06:33
Mr Flintstone
06:34
then hit choose file and select your private key. then you can make it default with the set as default button
06:34
Then at the top there is a “create” link, hit that
06:35
then near the bottom hit the “competition” button
06:35
then fill out the info with team 1, team2 etcetera and hit go, and you are done
ŽM
06:39
Živojin Mirić
How will amoveo know the result?
MF
06:40
Mr Flintstone
if there is a dispute about the outcome, you can use the amoveo oracle to settle the dispute and ask it who won the game
ŽM
06:40
Živojin Mirić
How will the Oracle know?
06:41
I assume there will be a dispute
MF
06:41
Mr Flintstone
people will report the outcome to the on chain oracle by betting VEO on the true outcome
ŽM
06:41
Živojin Mirić
How will the Oracle decide if that's really true?
06:42
Is it AI?
MF
06:42
Mr Flintstone
if the reported value is not disputed for 1 week then it settles into the reported outcome
ŽM
06:43
Živojin Mirić
So its not some advanced tech its about some people agreeing on some stuff
06:43
What's so fancy about it then
06:43
What if it's disputed?
06:43
Who decides whats true?
06:44
Truth can be anything
MF
06:44
Mr Flintstone
In reply to this message
this is how the blockchain decides what is true
ŽM
06:44
Živojin Mirić
What happens if it is disputed?
06:44
Who decides what's true?
MF
06:44
Mr Flintstone
it is based on the assumption that the veo tokens on the side reflecting reality will be more valuable than the side reflecting a lie. since the veo on the true side can be used for financial contracts
06:45
if you report an outcome to the amoveo oracle, it is like you are saying you are moving your veo to that universe
ŽM
06:45
Živojin Mirić
So it is fundamentally flawed, people could agree to support a false fact and they win
06:45
????
06:46
It's vulnerable to corruption just like PoS?
06:46
06:46
I trusted you
MF
06:46
Mr Flintstone
i dont understand what argument you are making
ŽM
06:47
Živojin Mirić
So what people with big resources claim that is true
MF
06:47
Mr Flintstone
then they lose their money
ŽM
06:47
Živojin Mirić
Amoveo think it's true
06:48
Who decides who loses money?
MF
06:48
Mr Flintstone
there is a fork. and whichever token is less valuable, they lose money
ŽM
06:48
Živojin Mirić
The majority of the resources?
MF
06:48
Mr Flintstone
the idea is to not get to that point
06:48
but that is how it is enforced
ŽM
06:48
Živojin Mirić
Ok lets go to the basic question
MF
06:48
Mr Flintstone
the cost of forking is paid for by the oracle betting escalation
ŽM
06:49
Živojin Mirić
If i bet on my local club to win the first game of their next campaign, who will determine if they really won or not?
MF
06:50
Mr Flintstone
you will settle your contract without needing to worry about that. like if you win, you will sell your position to someone who believes that amoveo will report the correct outcome, and you can get paid 99% of the winning
06:50
as soon as it happens
06:50
or you settle it with your counterparty, and the oracle is never touched
06:50
but the oracle game works out how i described it.
06:51
if it is common public knowledge the blockchain with valuable veo tokens will end up reporting the truth
ŽM
06:51
Živojin Mirić
You are skipping steps, i dont care what someone thinks, 100% of people on earth could think something that's wrong, how will the bet be settled so it's 100% true?
06:52
So in your description it's as succeptible to corruption as any other system
MF
06:52
Mr Flintstone
you should not bet on ambiguous things, thats usually how you avoid that problem with traditional bookies etc
ŽM
06:52
Živojin Mirić
Its not ambigous its an exact fact
06:52
Who won a matchh result is final and clear
MF
06:52
Mr Flintstone
in that case it should be very easy for amoveo to report that outcome, so it should be safe to bet on
ŽM
06:53
Živojin Mirić
How will it be easy whats the input?
06:53
Who will feed it with correct info?
MF
06:53
Mr Flintstone
i explained that
ŽM
06:53
Živojin Mirić
You did not
MF
06:53
Mr Flintstone
you report true or false by betting veo on the outcome that happened
06:53
after it has happened
ŽM
06:53
Živojin Mirić
Ok someone reports something
06:54
How can it know it's really true?
06:54
What if the majority reports something false as truth?
06:54
And they are bribed to do that?
06:54
The will not lose money
06:55
Because most of the money is on that side
06:55
So amoveo thinks its true
06:55
That's no oracle
MF
06:55
Mr Flintstone
so, imagine there is a case where a ton of money is bet on the side that is a lie
ŽM
06:55
Živojin Mirić
Ok
MF
06:56
Mr Flintstone
so this means that amoveo would finalize in a lie, if nothing happened
06:57
everyone who bet on the truth loses their money in this universe, but double their money in a true universe. they are incentivized to fork amoveo to an outcome where the truth wins
06:58
the two coins will float on the market in value
06:58
the more valuable coin is the one you can use in financial derivatives contracts in the future
ŽM
06:58
Živojin Mirić
Lol
MF
06:58
Mr Flintstone
which is clearly the one that reports correct things
06:58
it is a similar trick that augur uses
ŽM
06:59
Živojin Mirić
So. This Oracle depends on someone forking it because they think it did not decide in their favour+
06:59
So what i someone malicious with a lot of resources forks it in their favour?
06:59
Its automatically truth?
07:00
How did Zack not find this succeptible to corruption?
07:01
Please explain i think you know better than this
07:01
Explain ELI5
MF
07:01
Mr Flintstone
In reply to this message
no. The idea is that it is supposed to play out so it prevents anything from getting to that point
07:01
betting on a falsehood is equivalent to lighting your money on fire
ŽM
07:01
Živojin Mirić
I dont care about what supposes what i care about the truth and how it will be enfoeced
07:02
Truth is irrefutable
07:02
How can amoveo learn about the true result?
07:02
From outside resources
07:02
In reply to this message
Why if some bad actors agree to fake the truth with a lot of money
07:03
Then they manufacture truth
Z
07:03
Zack
If they launch an altcoin of amoveo that lies about one thing, I don't think that would harm the price of the original amoveo
07:04
Like, I can make an altcoin of bitcoin where I own all the bitcoin's
ŽM
07:04
Živojin Mirić
Oh that's the premise
07:04
Then you are about to be surprised if amoveo ever gets big enough
07:04
How is this not succeptible to corruption?
Z
07:04
Zack
Paul sztorcs critique of amoveo is similar. He thinks both sides of the Oracle fork will survive, and it will fork into oblivion
ŽM
07:05
Živojin Mirić
You had some farfetched cases about corrupting the most of stake holders
07:05
So it all depends on users
07:05
That's no Oracle
07:05
This is bullshit
07:06
It doesnt matter who will survive, there could be 2 versions of "truth" that could survive and both of them could be false
07:06
And that's "truth" to you?
MF
07:07
Mr Flintstone
ambiguous things wont have sufficient betting activity to split the chain
ŽM
07:07
Živojin Mirić
Because people put money on it?
07:07
There is nothing ambigous about a result of a football match
07:07
Its 1 or 0
07:07
And people could fork 1000 of chains with false result
MF
07:07
Mr Flintstone
yeah
ŽM
07:08
Živojin Mirić
If they are corrupted
07:08
So whats the difference between amoveo and other PoS coins?
07:08
Regarding vulnerability to corruption of users?
MF
07:10
Mr Flintstone
gotta be more specific with how youre gonna corrupt it
07:10
like what is the vulnerability
Z
07:11
Zack
Bribing someone to make a losing bet is as expensive as making the losing bet yourself
07:11
Anyone can be an Oracle reporter in amoveo
07:12
Trying to attack by making losing bets is the same as giving free money to anyone willing to defend the correct outcome.
Everyone honest can double their veo for free.
MF
07:13
Mr Flintstone
Its easy for us to prove that the amoveo oracle works
ŽM
07:13
Živojin Mirić
Who decides who is honest?
07:13
The people with more money?
Z
07:13
Zack
Users have a preference for the version of amoveo that feels more honest to them.
ŽM
07:13
Živojin Mirić
In reply to this message
😱
07:15
And you dare to object some other coins that their system is vulnerable to corruption but at the same time amoveo is fundamentally based on feelings of it's users
07:15
Omg
07:16
Oracle = feelings?
07:16
I care about the truth
07:16
Not the feelings of the majority of the majority of money
07:16
Truth could be sponsored by no one
07:16
And it will still be true
07:17
So. If I bet some that some fundamental truth of pyhsics is true someone could win a bet if majority of users/money disagree with me
07:18
Based on feelings of human beings
07:18
Wtf
MF
07:18
Mr Flintstone
that is not how it works
ŽM
07:18
Živojin Mirić
Then how
MF
07:18
Mr Flintstone
Scroll up and read the comments
ŽM
07:19
Živojin Mirić
I read it
MF
07:19
Mr Flintstone
you only win bets in a false universe
07:19
in your example
ŽM
07:19
Živojin Mirić
Whats a universe
07:19
Omg