diff --git a/common/calculate.ts b/common/calculate.ts index 2e69690e..fbbfd66f 100644 --- a/common/calculate.ts +++ b/common/calculate.ts @@ -104,7 +104,7 @@ export function calculateShareValue(contract: Contract, bet: Bet) { } export function calculateSaleAmount(contract: Contract, bet: Bet) { - return (1 - 2 * FEES) * calculateShareValue(contract, bet) + return (1 - FEES) * calculateShareValue(contract, bet) } export function calculatePayout( @@ -145,7 +145,7 @@ export function calculateStandardPayout( totalShares[outcome] - phantomShares[outcome] - totalBets[outcome] const winningsPool = truePool - totalBets[outcome] - return amount + (1 - 2 * FEES) * ((shares - amount) / total) * winningsPool + return amount + (1 - FEES) * ((shares - amount) / total) * winningsPool } export function calculatePayoutAfterCorrectBet(contract: Contract, bet: Bet) { @@ -204,7 +204,7 @@ function calculateMktPayout(contract: Contract, bet: Bet) { return ( betP * bet.amount + - (1 - 2 * FEES) * + (1 - FEES) * ((betP * (bet.shares - bet.amount)) / weightedShareTotal) * winningsPool ) diff --git a/common/fees.ts b/common/fees.ts index 718cdbcb..767107ed 100644 --- a/common/fees.ts +++ b/common/fees.ts @@ -1,4 +1,4 @@ -export const PLATFORM_FEE = 0.01 // == 1% -export const CREATOR_FEE = 0.01 +export const PLATFORM_FEE = 0.01 +export const CREATOR_FEE = 0.09 export const FEES = PLATFORM_FEE + CREATOR_FEE diff --git a/common/payouts.ts b/common/payouts.ts index c4010ba2..77630502 100644 --- a/common/payouts.ts +++ b/common/payouts.ts @@ -38,12 +38,12 @@ export const getStandardPayouts = ( userId: bet.userId, payout: bet.amount + - (1 - 2 * FEES) * + (1 - FEES) * ((bet.shares - bet.amount) / shareDifferenceSum) * winningsPool, })) - const creatorPayout = 2 * CREATOR_FEE * winningsPool + const creatorPayout = CREATOR_FEE * winningsPool console.log( 'resolved', @@ -98,7 +98,7 @@ export const getMktPayouts = ( userId: bet.userId, payout: p * bet.amount + - (1 - 2 * FEES) * + (1 - FEES) * ((p * (bet.shares - bet.amount)) / weightedShareTotal) * winningsPool, })) @@ -107,12 +107,12 @@ export const getMktPayouts = ( userId: bet.userId, payout: (1 - p) * bet.amount + - (1 - 2 * FEES) * + (1 - FEES) * (((1 - p) * (bet.shares - bet.amount)) / weightedShareTotal) * winningsPool, })) - const creatorPayout = 2 * CREATOR_FEE * winningsPool + const creatorPayout = CREATOR_FEE * winningsPool return [ ...yesPayouts, diff --git a/common/sell-bet.ts b/common/sell-bet.ts index e3080644..eeeed355 100644 --- a/common/sell-bet.ts +++ b/common/sell-bet.ts @@ -36,8 +36,8 @@ export const getSellBetInfo = ( const probBefore = getProbability(contract.totalShares) const probAfter = getProbability(newTotalShares) - const creatorFee = 2 * CREATOR_FEE * adjShareValue - const saleAmount = (1 - 2 * FEES) * adjShareValue + const creatorFee = CREATOR_FEE * adjShareValue + const saleAmount = (1 - FEES) * adjShareValue console.log( 'SELL M$', diff --git a/web/pages/about.tsx b/web/pages/about.tsx index a0d7659e..47e796a7 100644 --- a/web/pages/about.tsx +++ b/web/pages/about.tsx @@ -1,7 +1,7 @@ import { cloneElement } from 'react' +import { CREATOR_FEE } from '../../common/fees' import { Page } from '../components/page' import { SEO } from '../components/SEO' -import { useContracts } from '../hooks/use-contracts' import styles from './about.module.css' export default function About() { @@ -132,8 +132,9 @@ function Contents() {
- The creator of the prediction market decides the outcome and earns 1% of - the betting pool for their effort. + The creator of the prediction market decides the outcome and earns{' '} + {CREATOR_FEE * 100}% of the winnings as a commission for creating and + resolving the market.
This simple resolution mechanism has surprising benefits in allowing a
diff --git a/web/pages/create.tsx b/web/pages/create.tsx
index 0dddd6f1..bc747fc7 100644
--- a/web/pages/create.tsx
+++ b/web/pages/create.tsx
@@ -177,7 +177,7 @@ export function NewContract(props: { question: string; tag?: string }) {
Market ante