Ejemplo n.º 1
0
def opt_alanapi():
	parser = OptionParser(usage="usage: %prog [option] SYMBOL ...", version="%prog 0.7",
		description="API for ALAN")
	parser.add_option("-s","--start",action="store",dest="start",
		help="start YYYY-MM-DD (default: 3-year-ago)")
	parser.add_option("-e","--end",action="store",dest="end",
		help="end YYYY-MM-DD (default: today)")
	parser.add_option("","--src",action="store",dest="src",default="iex",
		help="source [fred|yh|iex](default: iex)")
	parser.add_option("","--host",action="store",dest="hostname",default="localhost",
		help="db host (default: localhost)")
	parser.add_option("","--database",action="store",dest="dbname",default="ara",
		help="database (default: eSTAR_2)")
	parser.add_option("-t","--table",action="store",dest="tablename",
		help="db tablename (default: None)")
	parser.add_option("","--field",action="store",dest="field",default="*",
		help="database column field (default: *)")
	parser.add_option("","--instrument",action="store",dest="instrument",default="stock",
		help="instrument type [stock|macro] (default: None)")
	parser.add_option("-o","--output",action="store",dest="output",
		help="output type [json|csv|html] (default: None)")
	parser.add_option("-l","--lang",action="store",dest="lang",default="en",
		help="language (default: en)")
	parser.add_option("","--search",action="store",dest="search",
		help="SEARCH action (default: None)")
	parser.add_option("","--topic",action="store",dest="topic",
		help="TOPIC to search  (default: None)")
	parser.add_option("","--subtopic",action="store",dest="subtopic",
		help="SUBTOPIC (default: None)")
	parser.add_option("","--extra_js",action="store",dest="extraJS",
		help="extra JSON in DICT format.")
	parser.add_option("","--extra_xs",action="store",dest="extraXS",
		help="extra excutable string in k1=v1;k2=v2; format")
	parser.add_option("","--debug",action="store_true",dest="debugTF",default=False,
		help="debugging (default: False)")
	(options, args) = parser.parse_args()
	try:
		opts = vars(options)
		from _alan_str import extra_opts
		extra_opts(opts,xkey='extraJS',method='JS',updTF=True)
		extra_opts(opts,xkey='extraXS',method='XS',updTF=True)
		opts.pop('extraXS',None)
		opts.pop('extraJS',None)
	except Exception as e:
		sys.stderr.write("**ERROR:{} @{}\n".format(str(e),'opt_csv2plot'))
	return opts, args
Ejemplo n.º 2
0
def opt_theme_list(argv, retParser=False):
    """ command-line options initial setup
	    Arguments:
		argv:	list arguments, usually passed from sys.argv
		retParser:	OptionParser class return flag, default to False
	    Return: (options, args) tuple if retParser is False else OptionParser class 
	"""
    parser = OptionParser(
        usage="usage: %prog [option] METHOD",
        version="%prog 0.7",
        description="get sp500_component and save to MDB::sp500_component")
    parser.add_option("",
                      "--no_database_save",
                      action="store_false",
                      dest="saveDB",
                      default=True,
                      help="no save to database (default: save)")
    parser.add_option("",
                      "--extra_js",
                      action="store",
                      dest="extraJS",
                      help="extra JSON in DICT format.")
    parser.add_option("",
                      "--extra_xs",
                      action="store",
                      dest="extraXS",
                      help="extra excutable string in k1=v1;k2=v2; format")
    parser.add_option("",
                      "--debug",
                      action="store_true",
                      dest="debugTF",
                      default=False,
                      help="debugging (default: False)")
    (options, args) = parser.parse_args(argv[1:])
    if retParser is True:
        return parser
    opts = vars(options)
    try:
        from _alan_str import extra_opts
        extra_opts(opts, xkey='extraJS', method='JS', updTF=True)
        extra_opts(opts, xkey='extraXS', method='XS', updTF=True)
    except Exception as e:
        sys.stderr.write("**ERROR: {}\n".format(str(e)))
    return (opts, args)
Ejemplo n.º 3
0
def opt_lsi_mkt(argv, retParser=False):
    """ command-line options initial setup
	    Arguments:
		argv:   list arguments, usually passed from sys.argv
		retParser:      OptionParser class return flag, default to False
	    Return: (options, args) tuple if retParser is False else OptionParser class
	"""
    parser = OptionParser(
        usage="usage: %prog [option]",
        version="%prog 0.655",
        description="Create market commentary based on macro list")
    parser.add_option("",
                      "--region",
                      action="store",
                      dest="region",
                      default="US",
                      help="region [TW|US] (default: US)")
    parser.add_option("-d",
                      "--database",
                      action="store",
                      dest="dbname",
                      default="ara",
                      help="database name (default: ara)")
    parser.add_option("",
                      "--host",
                      action="store",
                      dest="hostname",
                      default="localhost",
                      help="db host name (default: localhost)")
    parser.add_option("-t",
                      "--table",
                      action="store",
                      dest="tablename",
                      help="db tablename (default: None)")
    parser.add_option(
        "",
        "--dirname",
        action="store",
        dest="dirname",
        help="db dirname to save all mktCmt comments (default: None)")
    parser.add_option(
        "-w",
        "--wmode",
        action="store",
        dest="wmode",
        default="replace",
        help="db table write-mode [replace|append|fail] (default: replace)")
    parser.add_option("-l",
                      "--lang",
                      action="store",
                      dest="lang",
                      default="cn",
                      help="db language mode [cn|en] (default: cn)")
    parser.add_option("-n",
                      "--numlimit",
                      action="store",
                      dest="numLimit",
                      default=7,
                      type="int",
                      help="max number of alert list (default: 7)")
    parser.add_option("",
                      "--no_database_save",
                      action="store_false",
                      dest="saveDB",
                      default=True,
                      help="no save to database (default: save to database)")
    parser.add_option("",
                      "--use_mp3",
                      action="store_true",
                      dest="mp3YN",
                      default=False,
                      help="comment use mp3 style")
    parser.add_option("",
                      "--make_mp3",
                      action="store_true",
                      dest="mp3Make",
                      default=False,
                      help="create mp3 file")
    parser.add_option("",
                      "--j2ts_header",
                      action="store",
                      dest="j2ts_header",
                      help="jinja2 header template script, (default: None).")
    parser.add_option("",
                      "--extra_js",
                      action="store",
                      dest="extraJS",
                      help="extra JSON in DICT format.")
    parser.add_option("",
                      "--extra_xs",
                      action="store",
                      dest="extraXS",
                      help="extra excutable string in k1=v1;k2=v2; format")
    parser.add_option("",
                      "--debug",
                      action="store_true",
                      dest="debugTF",
                      default=False,
                      help="debugging (default: False)")
    (options, args) = parser.parse_args(argv[1:])
    if retParser is True:
        return parser
    opts = vars(options)
    try:
        from _alan_str import extra_opts
        extra_opts(opts, xkey='extraJS', method='JS', updTF=True)
        extra_opts(opts, xkey='extraXS', method='XS', updTF=True)
    except Exception as e:
        print(str(e), file=sys.stderr)
    if 'sep' in opts:
        opts['sep'] = opts['sep'].decode("string_escape")
    return (opts, args)
Ejemplo n.º 4
0
def opt_csv2plot(argv=[],retParser=False):
	""" command-line options initial setup
	    Arguments:
		argv:	list arguments, usually passed from sys.argv
		retParser:	OptionParser class return flag, default to False
	    Return: (options, args) tuple if retParser is False else OptionParser class 
	"""
	parser = OptionParser(usage="usage: %prog [option] FILENAME", version="%prog 1.0",
		description="Time-series Plotting Utility via matplotlib")
	parser.add_option("-s","--sep",action="store",dest="sep",default="|",
		help="field separator (default: |)")
	parser.add_option("","--xaxis",action="store",dest="xaxis",default="pbdate",
		help="x-axis [pbdate|epochs] column name (default: pbdate in yyyymmdd)")
	parser.add_option("","--columns",action="store",dest="colLst",
		help="selected columns (default: ALL)")
	parser.add_option("","--ren_header",action="store",dest="hdrLst",
		help="rename header columns")
	parser.add_option("-t","--title",action="store",dest="title",
		help="title (default: combo-colunms)")
	parser.add_option("-n","--nbins",action="store",dest="nbins",default="6",type=int,
		help="number of bins in x-axis (default: 6)")
	parser.add_option("","--return_since_inception",action="store_true",dest="rsiYN",default=False,
		help="use Return since Inception plot. Note: $1 will be used as the initial investment if the initial is less than $1")
	parser.add_option("","--interpolate",action="store_true",dest="interpolateYN",default=False,
		help="use linear-interplation for missing data")
	parser.add_option("","--pivot_group",action="store",dest="pivot_group",
		help="pivot table group by column, must pair with PIVOT_VALUE")
	parser.add_option("","--pivot_value",action="store",dest="pivot_value",
		help="pivot table display value column, must pair with PIVOT_GROUP")
	parser.add_option("","--x_fmt",action="store",dest="x_fmt",default='%m-%d-%y',
		help="graph x-axis format (default: %m-%d-%y)")
	parser.add_option("","--png",action="store",dest="pngname",
		help="graph name (default: None)")
	parser.add_option("","--backend",action="store",dest="backend",default='tkAgg',
		help="matplotlib new backend(default: tkAgg)")
	parser.add_option("","--no_time_series",action="store_false",dest="tsTF",default=True,
		help="Simple line plot no time-series")
	parser.add_option("-l","--lang",action="store",dest="lang",default="cn",
		help="language mode [cn|en] (default: cn), ohlc/ohlc_combo ONLY")
	parser.add_option("","--ohlc",action="store_true",dest="ohlcTF",default=False,
		help="plot stock OHLC Candlestick")
	parser.add_option("","--ohlc_combo",action="store_true",dest="ohlcComboTF",default=False,
		help="plot stock OHLC Candlestick + MA/RSI/MACD Combo")
	parser.add_option("","--src",action="store",dest="src",default="yh",
		help="data source (FILENAME is used if 'FILENAME' is provided. default: yh)")
	parser.add_option("","--start",action="store",dest="start",
		help="start YYYY-MM-DD, must pair with SRC (default: 2-years-ago)")
	parser.add_option("","--end",action="store",dest="end",
		help="end YYYY-MM-DD, must pair with SRC (default: today)")
	parser.add_option("","--days",action="store",dest="days",default=730,type=int,
		help="number of days from END date, must pair with SRC (default: 730)")
	parser.add_option("","--trendline",action="store_true",dest="trendTF",default=False,
		help="Draw trendline, apply to the 1st array ONLY")
	parser.add_option("","--npar",action="store",dest="npar",default=15,type="int",
		help="trendline fitting polynomial degree (default: 15)")
	parser.add_option("","--j2ts",action="store",dest="j2ts",
		help="template script. Note, JINJA2 ONLY")
	parser.add_option("","--extra_js",action="store",dest="extraJS",
		help="extra JSON in DICT format.")
	parser.add_option("","--extra_xs",action="store",dest="extraXS",
		help="extra excutable string in k1=v1;k2=v2; format")
	parser.add_option("","--debug",action="store_true",dest="debugTF",default=False,
		help="debugging (default: False)")
	(options, args) = parser.parse_args(argv[1:])
	if retParser is True:
		return parser
	try:
		opts = vars(options)
		from _alan_str import extra_opts
		extra_opts(opts,xkey='extraJS',method='JS',updTF=True)
		extra_opts(opts,xkey='extraXS',method='XS',updTF=True)
	except Exception as e:
		sys.stderr.write("**ERROR:{} @{}\n".format(str(e),'opt_csv2plot'))
	return (opts, args)
Ejemplo n.º 5
0
def opt_yh_hist(argv, retParser=False):
    """ command-line options initial setup
	    Arguments:
		argv:   list arguments, usually passed from sys.argv
		retParser:      OptionParser class return flag, default to False
	    Return: (options, args) tuple if retParser is False else OptionParser class
	"""
    parser = OptionParser(usage="usage: %prog [option] SYMBOL1 ...",
                          version="%prog 0.01",
                          description="Pull Price History from YAHOO")
    parser.add_option("",
                      "--range",
                      action="store",
                      dest="ranged",
                      default='1d',
                      help="range period from now (default: 1d)")
    parser.add_option("",
                      "--gap",
                      action="store",
                      dest="gap",
                      default='1m',
                      help="interval GAP of data frequency (default: 1m)")
    parser.add_option("-d",
                      "--database",
                      action="store",
                      dest="dbname",
                      default="ara",
                      help="database (default: ara)")
    parser.add_option("",
                      "--host",
                      action="store",
                      dest="hostname",
                      default="localhost",
                      help="db host (default: localhost)")
    parser.add_option("-t",
                      "--table",
                      action="store",
                      dest="tablename",
                      default="prc_temp_yh",
                      help="db tablename (default: prc_temp_yh)")
    parser.add_option(
        "-w",
        "--wmode",
        action="store",
        dest="wmode",
        default="replace",
        help="db table write-mode [replace|append] (default: replace)")
    parser.add_option("-o",
                      "--output",
                      action="store",
                      dest="output",
                      help="OUTPUT type [csv|html|json] (default: no output)")
    parser.add_option("",
                      "--no_datetimeindex",
                      action="store_false",
                      dest="tsTF",
                      default=True,
                      help="no datetime index (default: use datetime)")
    parser.add_option("",
                      "--show_index",
                      action="store_true",
                      dest="indexTF",
                      default=False,
                      help="show index (default: False) Note, OUTPUT ONLY")
    parser.add_option(
        "-s",
        "--sep",
        action="store",
        dest="sep",
        default="|",
        help="output field separator (default: |) Note, OUTPUT ONLY")
    parser.add_option("",
                      "--no_database_save",
                      action="store_false",
                      dest="saveDB",
                      default=True,
                      help="no save to database (default: save to database)")
    parser.add_option("",
                      "--extra_js",
                      action="store",
                      dest="extraJS",
                      help="extra JSON in DICT format.")
    parser.add_option("",
                      "--extra_qs",
                      action="store",
                      dest="extraQS",
                      help="extra GET string format like k1=v1&k2=v2; ")
    parser.add_option("",
                      "--extra_xs",
                      action="store",
                      dest="extraXS",
                      help="extra excutable string like k1=v1;k2=v2; ")
    parser.add_option("",
                      "--debug",
                      action="store_true",
                      dest="debugTF",
                      default=False,
                      help="debugging (default: False)")
    (options, args) = parser.parse_args(argv[1:])
    try:
        from _alan_str import extra_opts
        opts = vars(options)
        extra_opts(opts, xkey='extraJS', method='JS', updTF=True)
        extra_opts(opts, xkey='extraQS', method='QS', updTF=True)
        extra_opts(opts, xkey='extraXS', method='XS', updTF=True)
        opts.update(args=args, narg=len(args))
    except Exception as e:
        sys.stderr.write(str(e) + "\n")
    if retParser is True:
        return parser
    return (opts, args)