def parameters_generator():
    instrument = ["dia"]
    entrySMA = range(150, 251)
    exitSMA = range(5, 16)
    rsiPeriod = range(2, 11)
    overBoughtThreshold = range(75, 96)
    overSoldThreshold = range(5, 26)
    return itertools.product(instrument, entrySMA, exitSMA, rsiPeriod, overBoughtThreshold, overSoldThreshold)

    # Load the feed from the CSV files.
    feed = yahoofeed.Feed()
    feed.addBarsFromCSV("dia", "dia-2009.csv")
    feed.addBarsFromCSV("dia", "dia-2010.csv")
    feed.addBarsFromCSV("dia", "dia-2011.csv")

    # Run the server.
    server.serve(feed, parameters_generator(), "localhost", 5000)
示例#2
0
import itertools
from pyalgotrade.optimizer import server
from pyalgotrade.barfeed import quandlfeed


def parameters_generator():
    instrument = ["ibm"]
    entrySMA = range(150, 251)
    exitSMA = range(5, 16)
    rsiPeriod = range(2, 11)
    overBoughtThreshold = range(75, 96)
    overSoldThreshold = range(5, 26)
    return itertools.product(instrument, entrySMA, exitSMA, rsiPeriod,
                             overBoughtThreshold, overSoldThreshold)


# The if __name__ == '__main__' part is necessary if running on Windows.
if __name__ == '__main__':
    # Load the bar feed from the CSV files.
    feed = quandlfeed.Feed()
    feed.addBarsFromCSV("ibm", "WIKI-IBM-2009-quandl.csv")
    feed.addBarsFromCSV("ibm", "WIKI-IBM-2010-quandl.csv")
    feed.addBarsFromCSV("ibm", "WIKI-IBM-2011-quandl.csv")

    # Run the server.
    server.serve(feed, parameters_generator(), "localhost", 5000)
示例#3
0
import itertools
from pyalgotrade.barfeed import yahoofeed
from pyalgotrade.optimizer import server


def parameters_generator():
    instrument = ["dia"]
    entrySMA = list(range(150, 155))
    exitSMA = list(range(5, 6))
    rsiPeriod = list(range(2, 5))
    overBoughtThreshold = list(range(88, 92))
    overSoldThreshold = list(range(16, 20))
    return itertools.product(instrument, entrySMA, exitSMA, rsiPeriod, overBoughtThreshold, overSoldThreshold)

# The if __name__ == '__main__' part is necessary if running on Windows.
if __name__ == '__main__':
    # Load the feed from the CSV files.
    feed = yahoofeed.Feed()
    feed.addBarsFromCSV("dia", "dia-2009.csv")
    feed.addBarsFromCSV("dia", "dia-2010.csv")
    feed.addBarsFromCSV("dia", "dia-2011.csv")

    # Run the server.
    server.serve(feed, parameters_generator(), "localhost", 6000)
示例#4
0
from pyalgotrade.barfeed import csvfeed
from pyalgotrade import bar


def parameters_generator():
    instrument = ["btc"]
    entrySMA = range(120, 155)
    exitSMA = range(10, 15)
    rsiPeriod = range(2, 4)
    overBoughtThreshold = range(70, 90)
    overSoldThreshold = range(19, 35)
    initialAmount = [5000]
    return itertools.product(instrument, entrySMA, exitSMA, rsiPeriod,
                             overBoughtThreshold, overSoldThreshold,
                             initialAmount)


# The if __name__ == '__main__' part is necessary if running on Windows.
if __name__ == '__main__':
    instrument = "btc"
    year = "2015"
    # Load the feed from the CSV files.
    barFeed = csvfeed.GenericBarFeed(bar.Frequency.MINUTE * 30)
    barFeed.addBarsFromCSV(instrument, "30min-%s-%s.csv" % (instrument, year))

    #feed = yahoofeed.Feed()
    # feed.addBarsFromCSV("btc", "btc_all_daily.csv")

    # Run the server.
    server.serve(barFeed, parameters_generator(), "0.0.0.0", 5000)
示例#5
0

def parameters_generator():
    instrument = ["BTC"]
    initialCash = [1000]
    vwapWindowSize = range(89, 180, 1)
    buyThreshold = map(lambda x: float(x) / 1000, range(5, 40, 1))
    sellThreshold = map(lambda x: float(x) / 1000, range(5, 40, 1))
    lenparams = len(sellThreshold) * len(buyThreshold) * len(vwapWindowSize)
    return (lenparams,
            itertools.product(instrument, initialCash, vwapWindowSize,
                              buyThreshold, sellThreshold))


# The if __name__ == '__main__' part is necessary if running on Windows.
if __name__ == '__main__':
    instrument = "BTC"
    year = "2016"
    minutes = 30

    # Load the feed from the CSV files.
    barFeed = csvfeed.GenericBarFeed(bar.Frequency.MINUTE * 30)

    barFeed.addBarsFromCSV(instrument,
                           "%smin-%s-%s.csv" % (minutes, instrument, year))

    # Run the server.
    lenp, params = parameters_generator()
    print "Running %s variations" % lenp
    server.serve(barFeed, params, "0.0.0.0", 5001)