股票

第六天

家住魔仙堡 提交于 2020-03-07 07:03:34
状态机解决股票问题 <>状态机,将每一天看做一个整体,有四种可能(即状态),分别是第一次买入股票,第二次买入股票,第一次卖掉股票,第二次卖掉股票,买股票时,要在价钱最低的情况下购买,卖股票时,要在价钱最高的时候卖掉股票,这样利润才能达到最大。 1)s1:记录第一次买入股票后剩余的余额 2)s2:记录第一次卖出股票后剩余的余额 3)s3:记录第二次买入股票后剩余的余额 4)s4:记录第二次卖出股票后剩余的余额 代码讲解 <>为什么可以这样做呢? <>因为第一次的买入会对第一次卖出的利润造成影响,s2又会对第二次买入获得的利润有影响,s3又会对第二次卖出后的利润有影响,所以这是一个层层影响动态变化,而我们要的是利润的总的最大值,所以我们可以采用利润叠加的方式来进行求解。 <>在代码中,我们是否要进行买入要根据前一次的状态进行,如果可以让利润升高,那我们就买入股票,反之则看卖出股票是否会使利润升高;买入股票后s1发生变化,进而导致后续的利润发生连锁的变化,而每一种利润都有其固定的计算方式,会按照其固定的方式进行利润的更新。 <>一些个人的看法:动态规划更像是一种面向过程的方式,通过遍历数组来得到想要的数据;状态机更像是一种面向对象的方式,具体的一天有属于它的买入和卖出的状态,这些状态的更新与前一个‘对象’的输入息息相关(类似于神经网络的反向梯度传播优化权重)。 class

新股申购流程介绍

假如想象 提交于 2020-03-07 06:43:00
工具/原料 证券账户股东卡 方法/步骤 1 新股新规   1、根据市值配售,单个市场市值只能用于本市场新股申购   根据投资者持有的市值确定其网上可申购额度,持有市值1万元以上(含1 万元)的投资者才能参与新股申购,沪市每1万元市值可申购一个申购单位,不足1万元的部分不计入申购额度。深市每5000元市值可申购一个申购单位,不足5000元的部分不计入申购额度。   2、融资融券信用账户市值合并算入投资者持有市值   融资融券客户信用证券账户的市值合并计算到该投资者持有的市值中,证券公司转融通担保证券明细账户的市值合并计算到该证券公司持有的市值中。   3、申购款应在申购委托前存入资金账户   申购委托前,投资者应把申购款全额存入其在证券公司开立的资金账户。申购时间内,投资者按委托买入股票的方式,以发行价格填写委托单。一经申报,不得撤单。申购配号根据实际有效申购进行,每一有效申购单位配一个号,对所有有效申购单位按时间顺序连续配号。   4、参与网下发行的投资者不得再参与网上新股申购   对每只新股发行,凡参与网下发行报价或申购的投资者,不得再参与网上新股申购。 2 新股申购流程 投资者T日,准备好足额资金,通过证券账户进行新股申购,买入委托(和买股票的菜单一样),数量 沪市股票需要是1000股的整数倍 , 深市股票需要是500股的整数倍 ,超过可申购额度都是废单

6.买卖股票的最佳时机3

会有一股神秘感。 提交于 2020-03-07 04:14:19
题目:给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你最多可以完成 两笔 交易。 注意: 你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 示例 1: 输入: [3,3,5,0,0,3,1,4] 输出: 6 解释: 在第 4 天(股票价格 = 0)的时候买入,在第 6 天(股票价格 = 3)的时候卖出,这笔交易所能获得利润 = 3-0 = 3 。 随后,在第 7 天(股票价格 = 1)的时候买入,在第 8 天 (股票价格 = 4)的时候卖出,这笔交易所能获得利润 = 4-1 = 3 。 class Solution { public : int maxProfit ( vector < int > & prices ) { if ( prices . size ( ) == 0 ) return 0 ; int minnum = prices [ 0 ] ; vector < int > dp ( prices . size ( ) + 1 , 0 ) ; int res = 0 ; for ( int i = 2 ; i <= prices . size ( ) ; i ++ ) { if ( prices [ i - 1 ] <= prices [ i - 2 ] ) dp [ i ] = dp [

打卡第六天(Task06)----买卖股票的最佳时机Ⅲ

旧城冷巷雨未停 提交于 2020-03-07 03:07:00
Leetcode刻意练习----数组6 题目 给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你最多可以完成 两笔 交易。 注意: 你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 示例 1: 输入: [3,3,5,0,0,3,1,4] 输出: 6 解释: 在第 4 天(股票价格 = 0)的时候买入,在第 6 天(股票价格 = 3)的时候卖出,这笔交易所能获得利润 = 3-0 = 3 。随后,在第 7 天(股票价格 = 1)的时候买入,在第 8 天 (股票价格 = 4)的时候卖出,这笔交易所能获得利润 = 4-1 = 3 。 示例 2: 输入: [1,2,3,4,5] 输出: 4 解释: 在第 1 天(股票价格 = 1)的时候买入,在第 5 天 (股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5-1 = 4 。 注意:你不能在第 1 天和第 2 天接连购买股票,之后再将它们卖出,因为这样属于同时参与了多笔交易,你必须在再次购买前出售掉之前的股票。 示例 3: 输入: [7,6,4,3,1] 输出: 0 解释: 在这个情况下, 没有交易完成, 所以最大利润为 0。 题解 class Solution : def maxProfit ( self , prices : List [ int ] )

leetcode股票问题,第五天

折月煮酒 提交于 2020-03-07 02:13:17
给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你最多可以完成 两笔 交易。 注意: 你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 示例 1: 输入: [3,3,5,0,0,3,1,4] 输出: 6 解释: 在第 4 天(股票价格 = 0)的时候买入,在第 6 天(股票价格 = 3)的时候卖出,这笔交易所能获得利润 = 3-0 = 3 。 随后,在第 7 天(股票价格 = 1)的时候买入,在第 8 天 (股票价格 = 4)的时候卖出,这笔交易所能获得利润 = 4-1 = 3 。 示例 2: 输入: [1,2,3,4,5] 输出: 4 解释: 在第 1 天(股票价格 = 1)的时候买入,在第 5 天 (股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5-1 = 4 。 注意你不能在第 1 天和第 2 天接连购买股票,之后再将它们卖出。 因为这样属于同时参与了多笔交易,你必须在再次购买前出售掉之前的股票。 示例 3: 输入: [7,6,4,3,1] 输出: 0 解释: 在这个情况下, 没有交易完成, 所以最大利润为 0。 这道题我一开始没什么思路所以就参考了下各位大佬的想法,和解答运用递归的想法很巧妙,让我想起了一道最基础的小学走楼梯1步两步方法数的。做数组的题目要先想好一个方法然后再不断改进,

低碳经济

心不动则不痛 提交于 2020-03-06 09:59:14
低碳经济投资的主线主要包括:   1.上游资源类,涉及的重点上市公司包括,西藏矿业,中信国安。   2..传统行业的节能减排,包括清洁煤发电在内的工业节能;涉及的重点上市公司主要包括:华光股份、海陆重工。   3.建筑节能;涉及的重点上市公司主要包括:泰豪科技、烟台万华、北新建材、南玻A。   4..机电节能;涉及的重点上市公司主要包括:智光电气 、荣信股份、置信电气、中科三环、思源电气。   5.照明节能;涉及的重点上市公司主要包括:浙江阳光、佛山照明、雪莱特、三安光电。   6. 风电、金凤科技,华锐铸钢,中材科技,长城电工、湘电股份、东方电气、中国南车,湘电股份、天马股份,方圆支承,轴研科技,许继电气、国电南瑞,、上海电气、天威保变、华仪电气、长征电器、银星能源   7.光伏板块,天威保变,南玻A   8.核能板块。中核科技   9.电池。稀土高科,杉杉股份   10.生物质能。丰原生化,华润生化,广东甘化,   11.智能电网 长城开发,许继电气,东方电子,思源电气。   12..新能源汽车 江淮汽车【同升阁】 来源: https://www.cnblogs.com/lidp/archive/2009/10/28/1697532.html

基于价格的相对强弱量化交易策略

折月煮酒 提交于 2020-03-05 22:06:06
什么是相对强度 相对强弱是一种动量投资策略,它将股票,交易基金(ETF)或共同基金的表现与整体市场的表现进行比较。通过使用特定的计算,投资者可以确定与整体市场相比最强的表现者,为投资提供建议。相对强弱假设正在上涨的资产价格会一直上涨,或至少延申其上涨轨迹。 这点特性在无论在任何交易标的中都是大概率成立的,在数字货币中尤为如此,通过量化这些上涨因素的参数,回报率会有一个可靠且很大的提升。 具体的相对强度 相对强度创造了特定交易标的的表现与所选基准(例如市场指数)以及其他类似交易标的的表现的比较点。相对强度策略既有进入也有退出;投资者使用这种技术的目的是在相关交易标的开始出现疲软的情况下,尽快购买具有强势迹象的交易标的,同时出售其持有的弱势交易标的。此投资策略本身就具有相对优势,也可以应用于更复杂的策略,如配对交易。 利用相对强弱指导投资决策 投资者可以利用相对优势来确定所选潜在投资组中的最佳表现者。这使得每个交易标的的表现可以直接与另一个交易标的或选定的基准指数(如一篮子主流数字货币指数)进行比较。传统上,投资者使用相对强势来比较股票彼此或指数。投资者只能根据相关资产净值(NAV)除以股票数量,利用相对强弱来相互比较共同基金。这一点移植到数字货币上再合适不过了。 相对强度分析在具有强烈趋势或主题的市场中处于最佳状态,可以识别或指示何时是投资它们的最佳时机。但在出现没有特色的市场中

2020-03-04盘后总结

二次信任 提交于 2020-03-05 09:57:50
指数 1、上证指数3011.67,涨幅0.63%;深证成指11493.02,涨幅0.08%;中小板指7532.92,涨幅-0.41%;创业板指2169.44,涨幅-0.18% 外资 2、沪深股通成交额前十 (沪股通) (深股通) 两融余额 1、融资余额11020.40亿,融券余额160.19亿。 板块 来源: CSDN 作者: 三郎君 链接: https://blog.csdn.net/qq_38870388/article/details/104667529

买卖股票的最佳时机 II

荒凉一梦 提交于 2020-03-04 18:27:27
买卖股票的最佳时机 II 题目 给定一个数组,它的第i个元素是一支给定股票第i天的价格。 设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多交易(多次买卖一支股票)。 注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 链接:https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock-ii/ 思路 根据对题目的分析,可以采用贪心算法,即不考虑多天持有一支股票,每次只持有一天。只要第i天的价格比第i-1天高,我们就在第i-1天买入,第i天卖出。 注:可以在卖出当天再次买入股票 python代码 class Solution : def maxProfit ( self , prices : List [ int ] ) - > int : profit = 0 for i in range ( 1 , len ( prices ) ) : if prices [ i ] > prices [ i - 1 ] : profit += ( prices [ i ] - prices [ i - 1 ] ) return profit 相关知识点 range函数 执行结果 执行用时 : 56 ms, 在所有 Python3 提交中击败了89.01% 的用户 内存消耗 : 14.5 MB,