Ejemplo n.º 1
0
def get_report_title(burl):
    """ Get title of the report """
    return_data = ''
    date_now = datetime.datetime.now()
    dnstr = date_now.strftime("%A %d %B, %Y")
    l_title = 'Daily Intelligence Briefing: <br />' + dnstr
    l_generated_for = 'Report generated for '
    if user_is_login():
        connection = pymysql.connect(host=DB_SRV,
                                     user=DB_USR,
                                     password=DB_PWD,
                                     db=DB_NAME,
                                     charset='utf8mb4',
                                     cursorclass=pymysql.cursors.DictCursor)
        cursor = connection.cursor(pymysql.cursors.SSCursor)
        sql = "SELECT name FROM users WHERE id= " + str(get_user_numeric_id())
        cursor.execute(sql)
        res = cursor.fetchall()
        name = ''
        for row in res:
            name = row[0]
        cursor.close()
        connection.close()

        return_data = return_data +\
        '<h1>'+ l_title +'</h1>' +\
        l_generated_for + '<strong>'+ name.capitalize() + '</strong>'+\
        '<hr />'
    else:
        return_data = return_data +\
        '<h1>'+ l_title +'</h1>' +\
        'This report is only accessible to members only. '+\
        '<a href="'+ burl +'signin/?redirect='+ burl +'intelligence">Sign In</a>'
    return return_data
Ejemplo n.º 2
0
def get_expired_signals(burl):
    """ Get expired signals table """
    return_data = ''
    if user_is_login():
        l_title = 'Expired Signals'
        date_minus_seven = datetime.datetime.now() - (timedelta(days=7))
        dnstr = date_minus_seven.strftime("%A %d %B, %Y")
        l_comment = 'Signals with orders entered on <strong>' +\
        dnstr + '</strong> '+\
        'and before are now expired and may be closed or managed at your own discretion.'
        return_data = ''+\
        '<div class="row">' +\
        '    <div class="col-lg-1 col-md-1 col-sm-12 col-xs-12"></div>'+\
        '    <div class="col-lg-10 col-md-10 col-sm-12 col-xs-12">'+\
        '<div class="box-part rounded">'+\
        '<div style="text-align: center; overflow: hidden;">'+\
        '</div>'+\
        '<br />'+\
        '<h2>'+ l_title  +'</h2>'+\
        '</div></div>'+\
        '    <div class="col-lg-1 col-md-1 col-sm-12 col-xs-12"></div>'+\
        '</div>'+\
        '<div class="row">' +\
        '    <div class="col-lg-1 col-md-1 col-sm-12 col-xs-12"></div>'+\
        '    <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12">'+\
        '<div class="box-part rounded">'+ l_comment +\
        '</div></div>'+\
        '    <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">'+\
        '<div class="box-part rounded">'+\
        get_trades_tbl(0, 'today', burl, 'expired') +\
        '</div></div>'+\
        '    <div class="col-lg-1 col-md-1 col-sm-12 col-xs-12"></div>'+\
        '</div>'
    return return_data
Ejemplo n.º 3
0
def get_market_snapshot_section():
    """ Get the market snapshot section """
    return_data = ''
    l_title = 'Market Snapshot'

    uid_worldstocks = 544
    uid_eem = 540
    uid_gold = 39
    uid_btc = 7
    uid_jpy = 575
    uid_tlt = 163

    if user_is_login():
        return_data = ''+\
        '<div class="row">' +\
        '    <div class="col-lg-1 col-md-1 col-sm-12 col-xs-12"></div>'+\
        '    <div class="col-lg-10 col-md-10 col-sm-12 col-xs-12">'+\
        '<div class="box-part rounded"><h2>'+ l_title  +'</h2></div></div>'+\
        '    <div class="col-lg-1 col-md-1 col-sm-12 col-xs-12"></div>'+\
        '    <div class="col-lg-1 col-md-1 col-sm-12 col-xs-12 d-none d-md-block"></div>'+\
        '    <div class="col-lg-3 col-md-3 col-sm-6 col-xs-6 d-none d-md-block">'+\
        '<div class="box-part rounded">'+\
        get_tradingview_mini_chart(uid_worldstocks, '100%', '160', 'false', '6m', 0, '') +\
        '</div></div>'+\
        '    <div class="col-lg-3 col-md-3 col-sm-6 col-xs-6 d-none d-md-block">'+\
        '<div class="box-part rounded">'+\
        get_tradingview_mini_chart(uid_eem, '100%', '160', 'false', '6m', 0, '') +\
        '</div></div>'+\
        '    <div class="col-lg-3 col-md-3 col-sm-6 col-xs-6 d-none d-md-block">'+\
        '<div class="box-part rounded">'+\
        get_tradingview_mini_chart(uid_gold, '100%', '160', 'false', '6m', 0, '') +\
        '</div></div>'+\
        '    <div class="col-lg-2 col-md-2 col-sm-12 col-xs-12 d-none d-md-block"></div>'+\
        '    <div class="col-lg-1 col-md-1 col-sm-12 col-xs-12 d-none d-md-block"></div>'+\
        '    <div class="col-lg-3 col-md-3 col-sm-6 col-xs-6 d-none d-md-block">'+\
        '<div class="box-part rounded">'+\
        get_tradingview_mini_chart(uid_btc, '100%', '160', 'false', '6m', 0, '') +\
        '</div></div>'+\
        '    <div class="col-lg-3 col-md-3 col-sm-6 col-xs-6 d-none d-md-block">'+\
        '<div class="box-part rounded">'+\
        get_tradingview_mini_chart(uid_jpy, '100%', '160', 'false', '6m', 0, '') +\
        '</div></div>'+\
        '    <div class="col-lg-3 col-md-3 col-sm-6 col-xs-6 d-none d-md-block">'+\
        '<div class="box-part rounded">'+\
        get_tradingview_mini_chart(uid_tlt, '100%', '160', 'false', '6m', 0, '') +\
        '</div></div>'+\
        '    <div class="col-lg-2 col-md-2 col-sm-12 col-xs-12 d-none d-md-block"></div>'+\
        '    <div class="col-lg-1 col-md-1 col-sm-12 col-xs-12"></div>'+\
        '    <div class="col-lg-10 col-md-10 col-sm-12 col-xs-12">'+\
        '<div class="box-part rounded">'+\
        get_market_snapshot_n_brief_text('market_snapshot') +\
        '<br /><br />'+\
        '<div style="text-align: center; overflow: hidden;">'+\
        '</div>'+\
        '</div></div>'+\
        '    <div class="col-lg-1 col-md-1 col-sm-12 col-xs-12"></div>'+\
        '</div>'
    return return_data
Ejemplo n.º 4
0
def gen_main_page(selection,
                  appname,
                  burl,
                  is_dashboard,
                  tour,
                  nonavbar,
                  terminal):
    """ xxx """
    metarefresh = ''
    refresh_in_second = 900
    navbarcontent = ''
    if nonavbar is None:
        navbarcontent = navbar(burl, 0, terminal)
    page_content = ''
    
    if is_dashboard == str(1):
        if user_is_login() == 1:
            page_content = get_dashboard(burl, is_dashboard)
        else:
            page_content = ''
    else:
        page_content = get_page_content(burl, terminal, selection)
        if user_is_login() == 1:
            metarefresh = '<meta http-equiv="refresh" content="'+ str(refresh_in_second) +'">'

        
    return_data = get_head(get_loading_head() +\
                           get_googleanalytics() +\
                           get_googleadsense() +\
                           get_title(appname) +\
                           metarefresh+get_metatags(burl) +\
                           set_ogp(burl, 1, '', '') +\
                           get_bootstrap(get_sa_theme(), burl) +\
                           get_font_awesome() +\
                           get_google_chart_script() +\
                           get_stylesheet(burl))
    return_data = return_data + get_body(get_loading_body(),
                                         navbarcontent +\
                                         gen_tour_popup(tour, burl) +\
                                         get_signin_box(burl) +\
                                         get_box_user_profile_header() +\
                                         page_content + get_page_footer(burl, False) +\
                                         get_purechat(0),'')
    return_data = set_page(return_data)
    return return_data
Ejemplo n.º 5
0
def get_feed(burl, terminal, selection):
    """ xxx """
    feed_content = ''
    google_ad = ''

    if user_is_login() == 0:
        feed_content = feed_content + get_newsfeed(burl, 0, 0, 10, 1, terminal) + '<br />'

    if user_is_login() == 1:
        feed_content = feed_content + get_newsfeed(burl, 0, 0, 15, 1, terminal) + '<br />'
        feed_content = feed_content + google_ad + '<br />'

    feed_content = feed_content + get_newsfeed(burl, 1, 0, 5, 1, terminal) + '<br />'

    if user_is_login() == 1:
        feed_content = feed_content + get_newsfeed(burl, 2, 0, 30, 1, terminal) + '<br />'
        
    return feed_content
Ejemplo n.º 6
0
def redirect_if_not_logged_in(burl, redirect):
    """ xxx """
    return_data = ''
    redirect_after_second = '180'

    if user_is_login() != 1:
        return_data = '<meta http-equiv="refresh" content="'+\
        redirect_after_second +'; url='+\
        burl+'signin/?redirect='+ redirect +'">'
    else:
        return_data = ''

    return return_data
Ejemplo n.º 7
0
def get_signin_box(burl):
    """ xxx """
    box_content = ''
    if user_is_login() == 0:
        l_app_header_title = 'Create unlimited optimized trading strategies'

        l_app_header_desc = 'Chart patterns, price movements, '+\
        'and news analysed using quantitative methods '+\
        'with the power of artificial intelligence to generate trading signals. '+\
        'Generate more profitable trades by using SmartAlpha as your trading assistant.'

        l_app_call_to_action_link = 'Join now.'
        etoro_logo_form = go_to_url(
            get_broker_affiliate_link('eToro', 'affiliate'), 'form', 'eToro')
        etoro_logo_link = go_to_url(
            get_broker_affiliate_link('eToro', 'affiliate'), 'link', 'eToro')

        box_content = etoro_logo_form +\
        '<div class="box-sign"><div class="row">' +\
        '        <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">'+\
        '            <div class="sign-part">'+\
        '               <div class="row sign-row">'+\
        '                <div class="col-lg-6 col-md-6 col-sm-23 col-xs-12 sa-signin-box">'+\
        '                   <div>&nbsp;</div>'+\
        '                   <h1 style="text-align: left; font-size:x-large; font-weight:bolder;">'+\
        l_app_header_title +'</h1>   '+\
        '                   <div>'+\
        l_app_header_desc +'&nbsp;<a href="'+\
        burl +'join/?" class="text-info">'+\
        l_app_call_to_action_link +'</a></div>'+\
        '                   <div class="row d-none d-sm-block style="margin: 20px;">'+\
        '                       <a '+\
        etoro_logo_link +'" target="_blank"><img src="'+\
        burl +'static/etoro-logo.png" height="50px" style="margin:20px;" /></a>'+\
        '                       <a href="#" target=""><img src="'+\
        burl +'static/tradingview-logo.png" height="50px" style="margin:20px;" /></a>'+\
        '                       <a href="#" target=""><img src="'+\
        burl +'static/aws-logo.png" height="50px" style="margin:20px;" /></a>'+\
        '                   </div>'+\
        '                </div>'+\
        '                <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12" '+\
        'style="padding: 50px;">'+\
        get_login_form(burl, 'dark', '') +\
        '                </div>'+\
        '               </div>'+\
        '            </div>'+\
        '        </div>'+\
        '</div></div>'
    return box_content
def get_table_content_list_instr_n_portf(burl, mode, what, step, maxrow, sel):
    """ xxx """
    return_data = ''
    if sel is None:
        sel = ''

    if what == 'instr':
        return_data = draw_instr_table(burl, mode, step, maxrow, sel)
    if what == 'portf':
        if user_is_login() == 1:
            return_data = draw_portf_table(burl, maxrow, sel, True)
        if mode != 'dashboard':
            return_data = return_data + draw_portf_table(
                burl, maxrow, sel, False)
    return return_data
Ejemplo n.º 9
0
def get_how_menu(burl, terminal):
    """ xxx """
    return_data = ''
    l_helptooltip = 'Help'
    if user_is_login() == 1:
        l_howitworks = '<i class="far fa-question-circle" style="font-size: x-large;"></i>'
    else:
        l_howitworks = ''

    l_how_menu = '<li class="nav-item d-none d-sm-block">'+\
    '<a class="nav-link sa-navbar-text" href="'+ open_window_as(burl +'h/', terminal) +\
    '" data-toggle="tooltip" data-placement="bottom" data-original-title="'+\
    l_helptooltip +'">'+ l_howitworks +'</a></li>'

    return_data = l_how_menu
    return return_data
Ejemplo n.º 10
0
def get_box_user_profile_header():
    """ Get the moving tickers header """
    box_content = ''
    if user_is_login() == 1:
        uid = user_get_uid()

        box_content = '<div class="box-uhead sa-uhead-box">' +\
        '   <div class="row sa-uhead-box bg-dark">'+\
        '        <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">'+\
        '            <div class="box-part rounded sa-center-content sa-uhead-box" '+\
        'style="height: 95px;">'+\
        get_tradingview_ticker(uid) +\
        '            </div>'+\
        '        </div>'+\
        '   </div>'+\
        '</div>'

    return box_content
Ejemplo n.º 11
0
def get_purechat(force_display):
    """ Get PureChat loaded on page """
    return_data = ''
    content = ""
    if user_is_login() == 0 or force_display == 1:
        content = "<script type='text/javascript' data-cfasync='false'>"+\
        "window.purechatApi = { l: [], t: [], on: function () { this.l.push(arguments); } }; "+\
        "(function () { var done = false; var script = document.createElement('script'); "+\
        "script.async = true; script.type = 'text/javascript'; "+\
        "script.src = 'https://app.purechat.com/VisitorWidget/WidgetScript'; "+\
        "document.getElementsByTagName('HEAD').item(0).appendChild(script); "+\
        "script.onreadystatechange = script.onload = "+\
        "function (e) "+\
        "{ if (!done && (!this.readyState || this.readyState == 'loaded' || "+\
        "this.readyState == 'complete')) "+\
        "{ var w = new PCWidget({c: '712eb02f-e280-45ee-ab5f-3b25c0c77aed', f: true }); "+\
        "done = true; } }; })();</script>"
    return_data = content
    return return_data
Ejemplo n.º 12
0
def get_signals_lines(burl, terminal):
    """ Get signals lines """
    return_data = ''
    signal_available = False
    if user_is_login():
        l_title = 'Opportunities'
        l_customize_label = 'Customize your Report'
        l_customize_link = '<span style="font-size: small;">[<a href="'+\
        burl +'p/?ins=1&step=1">'+\
        l_customize_label +'</a>]</span>'
        date_now = datetime.datetime.now()
        dnstr = date_now.strftime("%Y%m%d")

        connection = pymysql.connect(host=DB_SRV,
                                     user=DB_USR,
                                     password=DB_PWD,
                                     db=DB_NAME,
                                     charset='utf8mb4',
                                     cursorclass=pymysql.cursors.DictCursor)
        cursor = connection.cursor(pymysql.cursors.SSCursor)
        sql = "SELECT DISTINCT "+\
            "trades.uid "+\
            "FROM trades "+\
            "JOIN portfolios ON portfolios.symbol = trades.symbol "+\
            "JOIN instruments ON instruments.symbol = portfolios.portf_symbol "+\
            "JOIN instruments as a_alloc ON a_alloc.symbol = portfolios.symbol "+\
            "WHERE "+\
            "((portfolios.strategy_order_type = 'long' AND trades.order_type = 'buy') "+\
            "OR (portfolios.strategy_order_type = 'short' AND trades.order_type = 'sell') "+\
            "OR (portfolios.strategy_order_type = 'long/short') ) AND "+\
            "(trades.entry_date >= " + dnstr + " AND instruments.owner = " +\
            str(get_user_numeric_id()) + " AND status = 'active')"
        cursor.execute(sql)
        res = cursor.fetchall()
        return_data = ''+\
        '<div class="row">' +\
        '    <div class="col-lg-1 col-md-1 col-sm-12 col-xs-12"></div>'+\
        '<div class="col-lg-10 col-md-10 col-sm-12 col-xs-12">'+\
        '<div class="box-part rounded">'+\
        '<h2>'+ l_title + '</h2>'+\
        l_customize_link +\
        '</div></div>'+\
        '</div>'
        for row in res:
            signal_available = True
            uid = row[0]
            return_data = return_data +\
            '<div class="row">' +\
            '    <div class="col-lg-1 col-md-1 col-sm-12 col-xs-12"></div>'+\
            '    <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12">'+\
            '<div class="box-part rounded">'+\
            get_tradingview_mini_chart(uid, '100%', '200', 'false', '1m', 1, '') +\
            '</div></div>'+\
            '    <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">'+\
            '<div class="box-part rounded">'+ get_signal_details(uid, burl, 'desc', terminal) +\
            '<span style="font-size: small">'+ get_recomm(uid)  +'</span>'+\
            '</div></div>'+\
            '    <div class="col-lg-1 col-md-1 col-sm-12 col-xs-12"></div>'+\
            '</div>'
        cursor.close()
        connection.close()

    if not signal_available:
        return_data = return_data +\
        'There is no trading signal according to your strategy for today.'

    return return_data
Ejemplo n.º 13
0
def navbar(burl, disable_search, terminal):
    """ xxx """
    search_placeholder = '  <search> function, ticker...'
    sid = get_random_str(9)
    l_join_now_btn = 'Join now'
    l_themeswitch = 'Theme: Light/Dark'
    l_settings = 'Settings'
    l_logout = 'Logout'
    l_feed_tooltip = 'Signals / Feed / Analysis'
    if terminal is None:
        redirect_terminal = ''
        redirect_search_terminal_url = 'location.href = \'' + burl + 'search/\';'
    else:
        redirect_terminal = 'terminal'
        redirect_search_terminal_url = 'location.reload(); ' +\
        open_window_as(burl+ 'search/?terminal&nonavbar', terminal)

    search_box = ''
    if disable_search != 1:
        search_box = ' '+\
        '<div class="sa-cursor">'+\
        '    <input id="sa-search-input" onclick="'+ redirect_search_terminal_url +'"' +\
        '       type="text" name="'+ str(sid) +'" placeholder="'+\
        search_placeholder +'" aria-label="Search" class="d-none d-sm-block" >'+\
        '<i></i>'+\
        '</div>'

    if user_is_login() == 1:
        leftsidemenu = ''

        rightsidemenu = '' +\
        get_sa_terminal_menu(burl, terminal) +\
        get_dashboard_menu(burl, terminal) +\
        get_how_menu(burl, terminal) +\
        '    <li class="nav-item dropdown">'+\
        '      <a class="nav-link dropdown-toggle" href="#" id="userDropdown" '+\
        'role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">'+\
        '<i class="fas fa-user-circle" style="font-size: x-large;"></i>' +'</a>'+\
        '      <div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarDropdown">'+\
        '        <a class="dropdown-item sa-navbar-text" href="'+\
        burl + 'theme/?'+ redirect_terminal +'"><i class="fas fa-toggle-on"></i> '+\
        l_themeswitch +'</a>'+\
        '        <a class="dropdown-item sa-navbar-text" href="'+ open_window_as(burl + 'settings/', terminal) +\
        '"><i class="fas fa-cog"></i> '+\
        l_settings +'</a>'+\
        '        <div class="dropdown-divider"></div>'+\
        '        <a class="dropdown-item sa-navbar-text" href="'+\
        burl + 'logout/"><i class="fas fa-sign-out-alt"></i> '+\
        l_logout +'</a>'+\
        '      </div>'+\
        '    </li>'+\
        '<li class="nav-item">'+\
        get_portfolio_button(burl, terminal)+\
        '</li>'
    else:
        leftsidemenu = ''+\
        get_about_menu(terminal)

        rightsidemenu = '<strong>'+\
        get_how_menu(burl, terminal) +\
        '</strong>' +'<li class="nav-item"><a href="'+\
        burl+'join/?" class="btn btn-sm btn-danger btn-block form-signin-btn">'+\
        '<i class="fas fa-sign-in-alt"></i>&nbsp;'+\
        l_join_now_btn +'</a></li>'


    return_data = ''+\
    '<nav class="navbar fixed-top navbar-expand-sm navbar-dark bg-dark">'+\
    '<a class="navbar-brand" href="'+\
    burl +'?'+ redirect_terminal +'"><img src="'+\
    burl+'static/logo.png' +'?'+\
    get_random_str(9) +'" data-toggle="tooltip" data-placement="bottom" '+\
    'data-original-title="'+ l_feed_tooltip + '" ' +\
    ' height="30" alt="logo"></a>'+\
    '<button class="navbar-toggler" type="button" data-toggle="collapse" '+\
    'data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" '+\
    'aria-expanded="false" aria-label="Toggle navigation">'+\
    '  <span class="navbar-toggler-icon"></span>'+\
    '</button>'+\
    '<div class="collapse navbar-collapse" id="navbarSupportedContent">'+\
    search_box +\
    '  <ul class="navbar-nav mr-auto">'+\
    leftsidemenu +\
    '  </ul>'+\
    ' '+\
    '  <ul class="navbar-nav ml-auto">'+\
    rightsidemenu +\
    ' '+\
    '  </ul>'+\
    '</div>'+\
    '</nav>'
    return return_data
def gen_portf_user_example(burl, acm, notstart):
    """ xxx """
    resp = make_response(
        redirect(burl + 'genportf?step=2&notstart=' + str(notstart)))
    if acm is None:
        asset_class = '%%'
    else:
        asset_class = acm

    if user_is_login() == 1:
        connection = pymysql.connect(host=DB_SRV,
                                     user=DB_USR,
                                     password=DB_PWD,
                                     db=DB_NAME,
                                     charset='utf8mb4',
                                     cursorclass=pymysql.cursors.DictCursor)

        cursor = connection.cursor(pymysql.cursors.SSCursor)
        sql = "SELECT symbol_list.uid FROM instruments "+\
        "JOIN symbol_list ON symbol_list.symbol = instruments.symbol "+\
        "WHERE instruments.symbol NOT LIKE '%"+\
        get_portf_suffix() +"%' AND symbol_list.disabled=0 AND "+\
        "(instruments.y1_signal > 0 ) AND (instruments.asset_class LIKE '"+\
        asset_class +"' OR instruments.market LIKE '"+\
        asset_class +"') ORDER BY instruments.volatility_risk_st ASC, "+\
        "instruments.m6_signal DESC, instruments.m3_signal DESC LIMIT 5"
        cursor.execute(sql)
        res = cursor.fetchall()
        i = 1
        for row in res:
            resp.set_cookie('portf_s_' + str(i),
                            str(row[0]),
                            expires=datetime.datetime.now() +
                            datetime.timedelta(days=1))
            resp.set_cookie('portf_s_' + str(i) + '_conv',
                            str('weak'),
                            expires=datetime.datetime.now() +
                            datetime.timedelta(days=1))
            resp.set_cookie('portf_s_' + str(i) + '_type',
                            str('long/short'),
                            expires=datetime.datetime.now() +
                            datetime.timedelta(days=1))
            i += 1
        if i < 5:
            sql = "SELECT symbol_list.uid FROM instruments "+\
            "JOIN symbol_list ON symbol_list.symbol = instruments.symbol "+\
            "WHERE instruments.symbol NOT LIKE '%"+\
            get_portf_suffix() +"%' AND (instruments.m6_signal > 0 ) AND "+\
            "(instruments.asset_class LIKE '"+\
            asset_class +"' OR instruments.market LIKE '"+\
            asset_class +"') AND symbol_list.disabled = 0 "+\
            "ORDER BY instruments.volatility_risk_st ASC, "+\
            "instruments.m6_signal DESC, "+\
            "instruments.m3_signal DESC LIMIT 5"
            cursor.execute(sql)
            res = cursor.fetchall()
            i = 1
            for row in cursor:
                resp.set_cookie('portf_s_' + str(i),
                                str(row[0]),
                                expires=datetime.datetime.now() +
                                datetime.timedelta(days=1))
                resp.set_cookie('portf_s_' + str(i) + '_conv',
                                str('weak'),
                                expires=datetime.datetime.now() +
                                datetime.timedelta(days=1))
                resp.set_cookie('portf_s_' + str(i) + '_type',
                                str('long/short'),
                                expires=datetime.datetime.now() +
                                datetime.timedelta(days=1))
                i += 1
        if i < 5:
            add_additional_asset = "FX:"
            sql = "SELECT symbol_list.uid FROM instruments "+\
            "JOIN symbol_list ON symbol_list.symbol = instruments.symbol "+\
            "WHERE instruments.symbol NOT LIKE '%"+\
            get_portf_suffix() +"%' AND (instruments.y1_signal > 0 ) AND "+\
            "(instruments.asset_class LIKE '"+\
            add_additional_asset +"') AND symbol_list.disabled = 0 "+\
            "ORDER BY instruments.volatility_risk_st ASC, "+\
            "instruments.m6_signal DESC, "+\
            "instruments.m3_signal DESC LIMIT 5"
            cursor.execute(sql)
            res = cursor.fetchall()
            for row in res:
                resp.set_cookie('portf_s_' + str(i),
                                str(row[0]),
                                expires=datetime.datetime.now() +
                                datetime.timedelta(days=1))
                resp.set_cookie('portf_s_' + str(i) + '_conv',
                                str('weak'),
                                expires=datetime.datetime.now() +
                                datetime.timedelta(days=1))
                resp.set_cookie('portf_s_' + str(i) + '_type',
                                str('long/short'),
                                expires=datetime.datetime.now() +
                                datetime.timedelta(days=1))
                i += 1
    return resp
Ejemplo n.º 15
0
def get_page_footer(burl, force_display):
    """ xxx """
    copyright_year = '2020'
    box_content = ''
    copyright_line = ''
    if not force_display:
        copyright_line = ''+\
        '<div class="box">'+\
        '   <div class="row">'+\
        '      <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">'+\
        '           <div class="sa-center-content text-secondary">'+\
        'Made with <i class="fas fa-heart"></i> '+\
        'from London, Nairobi to Bangkok - <span class="text-muted">'+\
        'Copyright &copy; Taatu Ltd. '+ copyright_year +'</span></div>'+\
        '      </div>'+\
        '   </div>'+\
        '</div>'

    if user_is_login() == 0 or force_display:
        box_content = ' '+\
        '<div class="box">' +\
        '   <div class="row">'+\
        '        <div class="col-lg-2 col-md-2 col-sm-1 col-xs-1">'+\
        '            <div class="sa-center-content footer">'+\
        '            </div>'+\
        '        </div>'+\
        '        <div class="col-lg-2 col-md-2 col-sm-1 col-xs-1">'+\
        '            <div class="sa-center-content footer">'+\
        '               <br /><br /><strong>'+\
        '               <span style="font-size:large;"><a href="'+\
        burl +'static/taatu/index.html" target="_blank" '+\
        'class="text-info">Company</a></span>' +\
        '               <br /><br /></strong>'+\
        '            </div>'+\
        '        </div>'+\
        '        <div class="col-lg-2 col-md-2 col-sm-1 col-xs-1">'+\
        '            <div class="sa-center-content footer">'+\
        '               <br /><br /><strong>'+\
        '               <span style="font-size:large;"><a href="'+\
        burl +'static/taatu/index.html#contact" target="_blank" '+\
        'class="text-info">Contact Us</a></span>' +\
        '               <br /><br /></strong>'+\
        '            </div>'+\
        '        </div>'+\
        '        <div class="col-lg-2 col-md-2 col-sm-1 col-xs-1">'+\
        '            <div class="sa-center-content footer">'+\
        '               <br /><br /><strong>'+\
        '               <span style="font-size:large;"><a href="'+\
        burl +'static/taatu/index.html#business" target="_blank" '+\
        'class="text-info">Products and Services</a></span>' +\
        '               <br /><br /></strong>'+\
        '            </div>'+\
        '        </div>'+\
        '        <div class="col-lg-2 col-md-2 col-sm-1 col-xs-1">'+\
        '            <div class="sa-center-content footer">'+\
        '               <br /><br /><strong>'+\
        '               <span style="font-size:large;"><a href="'+\
        burl +'static/taatu/index.html#tc" target="_blank" '+\
        'class="text-info">Terms and Conditions</a></span>' +\
        '               <br /><br /></strong>'+\
        '            </div>'+\
        '        </div>'+\
        '   </div>'+\
        '   <div class="row">'+\
        '        <div class="col-lg-2 col-md-2 col-sm-1 col-xs-1">'+\
        '            <div class="sa-center-content footer">'+\
        '            </div>'+\
        '        </div>'+\
        '   </div>'+\
        '</div>'+\
        '<hr />'+\
        copyright_line+\
        '<br /><br /><br /><br />'
    return box_content