Ejemplo n.º 1
0
def test_evaluate_profitable():
    market = Market('test', 0, '', 'SingleMarket')
    c1 = Contract('test', 'test1', '')
    c2 = Contract('test', 'test2', '')
    c3 = Contract('test', 'test3', '')

    c1.short_offers = [ Offer(c1, 'NO', .4, 10) ]
    c2.short_offers = [ Offer(c2, 'NO', .6, 10) ]
    c3.short_offers = [ Offer(c3, 'NO', .8, 10) ]


    market.contracts = [ c1, c2, c3 ]

    r = buy_no.evaluate(market)
    
    assert r is not None

    ret = r[0]
    gain = r[1]
    cost = r[2]
    shares = r[3]

    assert cost == 18
    assert shares == 10
    assert round(ret, 2) == .1
    assert round(gain, 2) == 1.8
Ejemplo n.º 2
0
def test_evaluate_notprofitable():
    market = Market('test', 0, '', 'SingleMarket')
    c1 = Contract('test', 'test1', '')
    c2 = Contract('test', 'test2', '')
    c3 = Contract('test', 'test3', '')

    c1.short_offers = [ Offer(c1, 'NO', .9, 10) ]
    c2.short_offers = [ Offer(c2, 'NO', .95, 10) ]
    c3.short_offers = [ Offer(c3, 'NO', .99, 10) ]


    market.contracts = [ c1, c2, c3 ]

    r = buy_no.evaluate(market)
    
    assert r is None
Ejemplo n.º 3
0
def test_evaluate_empty_market():
    market = Market('test', 0, '', 'SingleMarket')
    market.contracts = []

    r = buy_no.evaluate(market)
    assert (r is None)
Ejemplo n.º 4
0
def evaluate_all(markets):
    for m in markets:
        if(m.market_id not in blacklist):
            out(m, 'BUY YES', buy_yes.evaluate(m))
            out(m, 'BUY NO', buy_no.evaluate(m))
            out(m, 'BUY YES/NO', buy_yes_no.evaluate(m))