Exemplo n.º 1
0
# configure logger
Log.init_instance(config().logfile(),
                  config().loglevel(),
                  config().logformat())

assets = {}
correlations = {}

if __name__ == "__main__":
    for path in config().input_path():
        Log.info("Searching in %s", path)
        for filename in os.listdir(path):
            if fnmatch.fnmatch(filename, "*.csv"):
                Log.info("File %s", filename)
                asset = Asset()
                asset.read_csv(os.path.join(path, filename))
                if len(asset.data["Volume"][
                        asset.data["Volume"] > 10000]) < args.min_data_points:
                    Log.info(
                        "Ignoring data set since it has too few entries ({} instead of {})"
                        .format(
                            len(asset.data["Volume"][
                                asset.data["Volume"] > 10000]),
                            args.min_data_points))
                    continue
                if asset.exchange is None or asset.symbol is None:
                    Log.info(
                        "Ignoring data set since exchange or symbol is missing"
                    )
                    continue
                assets[asset.exchange + "/" + asset.symbol] = asset
Exemplo n.º 2
0
                    help="Log level: DEBUG, INFO, WARN, ERROR")
parser.add_argument("--logfile",
                    action="store",
                    metavar="PATH",
                    help="Path to log file.")
parser.add_argument("-o",
                    "--output",
                    metavar="FILE",
                    required=True,
                    action="store",
                    help="Output file")
parser.add_argument("filename", metavar="FILE", help="files to process")

args = parser.parse_args()

# configuration files
Configuration.init_instance(args.config, args)

# configure logger
Log.init_instance(config().logfile(),
                  config().loglevel(),
                  config().logformat())

if __name__ == "__main__":
    Log.info("Generating indicators for %s", args.filename)
    asset = Asset()
    asset.read_csv(args.filename)
    asset = gen_indicators(asset)
    asset.write_csv(args.output)
    Log.info("Output written to %s", args.output)
Exemplo n.º 3
0
                    "svm=SVM regressor, "
                    "knn=KNN regressor, "
                    "nn=neural network regressor")
parser.add_argument("filename",
                    metavar="FILE",
                    nargs='*',
                    help="Stock data input files to process")

args = parser.parse_args()

# configuration files
Configuration.init_instance(args.config, args)

# configure logger
Log.init_instance(config().logfile(),
                  config().loglevel(),
                  config().logformat())

if __name__ == "__main__":
    for filename in config().input_filenames():
        Log.info("Running models for %s", filename)
        asset = Asset()
        asset.read_csv(filename)
        for model in args.models.split(","):
            if model == "lstm":
                lstm_model.fit_LSTM_models(asset)
            elif model == "clf":
                models.fit_classifiers(asset, classifiers=args.clf.split(","))
            elif model == "reg":
                models.fit_regressors(asset, regressors=args.reg.split(","))