
量化交易入门
文章平均质量分 74
介绍量化交易入门知识,共同学习,共同提高
Coder加油!
老程序员一枚,20年开发和技术管理经验。善长DevOps、Python、Java、C++和项目管理。欢迎关注交流。
展开
-
量化交易入门(四十一)ASI指标Python实现和回测
本文讲述了如何使用Backtrader框架和自定义指标(ASI)来构建交易策略并进行回测。通过分析回测结果,可以评估策略的性能,包括收益率、风险调整后收益(夏普比率)和回撤等指标。原创 2024-04-04 08:30:00 · 1238 阅读 · 0 评论 -
量化交易入门(四十)什么是ASI指标,怎么用它炒股
ASI指标全称为Accumulation Swing Index,即积累摆动指数。它是一种用于衡量市场供需关系强度的技术指标,由Welles Wilder开发。ASI指标结合了价格和成交量的变化,试图从动量的角度来衡量多空双方的力量对比。其计算公式如下:计算价格的变化值:ΔP = 今日收盘价 - 昨日收盘价计算成交量的变化值:ΔV = 今日成交量 - 昨日成交量当ΔP > 0且ΔV > 0时,ASI = ΔP * ΔV当ΔP < 0且ΔV > 0时,ASI = ΔP * ΔV。原创 2024-04-03 07:46:53 · 4224 阅读 · 0 评论 -
量化交易入门(三十九)怎么获取A股历史数据
前面我们都是以美股的苹果股票为例进行策略和技术指标的回测,量化交易对中国A股是否适用呢?我们怎么样免费获取A股的股票数据呢?我给你介绍三个免费的数据平台。原创 2024-04-02 08:00:00 · 1807 阅读 · 0 评论 -
量化交易入门(三十八)CCI指标Python实现和回测
CCI指标在量化交易中的策略:在以下情况下生成买入信号:当 CCI 指标的值低于下限(self.params.lower)并且在上一根K线上低于下限时,生成买入信号。在以下情况下生成卖出信号:当 CCI 指标的值高于上限(self.params.upper)并且在上一根K线上高于上限时,生成卖出信号。策略的目的是在 CCI 指标的值低于下限时买入,以获得较低的价格,并在 CCI 指标的值高于上限时卖出,以获得较高的价格,从而实现利润。原创 2024-04-02 07:00:00 · 1746 阅读 · 0 评论 -
量化交易入门(三十七)CCI指标学习和炒股应用
CCI指标全称为顺势指标(Commodity Channel Index),是一种用于衡量市场价格偏离其统计平均值的程度的技术分析指标。它由Donald Lambert在20世纪80年代初提出,最初用于期货市场分析,后来被广泛应用于股票、外汇等其他金融市场。原创 2024-04-01 19:28:40 · 1767 阅读 · 0 评论 -
量化交易入门(三十六)DMI指标Python实现和回测
首先我们来看一张回测后打印的回测效果图以及回测后的结果,让我们看看这个指标在股票买卖中效果如何。原创 2024-04-01 00:12:05 · 1667 阅读 · 0 评论 -
量化交易入门(三十四)DMI指标学习和应用
DMI(Dynamic Momentum Index)指标是一种趋势型指标,由威尔斯·威尔德(Welles Wilder)于1978年提出。它通过比较价格的正向和负向变动幅度来衡量市场趋势的强度和方向。+DI(Positive Directional Indicator):衡量价格上涨趋势的强度。-DI(Negative Directional Indicator):衡量价格下跌趋势的强度。ADX(Average Directional Index):衡量趋势的强度,但不表示趋势的方向。原创 2024-04-01 07:00:00 · 2802 阅读 · 0 评论 -
量化交易入门(三十五)回测框架backtrader-Strategy
同时,我们也可以通过notify_order和notify_trade方法来处理订单和交易的状态更新,实现更复杂的交易逻辑。建议你在学习Backtrader的同时,也要深入研究量化交易的理论基础,并在实践中不断积累经验和改进策略。总之,Backtrader提供了一个完整的量化交易开发环境,涵盖了从数据处理、策略开发、回测优化到实盘交易的全流程。在这个示例中,我们创建了Cerebro引擎,加载了数据,添加了我们定义的MACD策略,然后运行回测并绘制结果图。原创 2024-04-01 08:00:00 · 1024 阅读 · 0 评论 -
量化交易入门(三十三)BIAS指标实现和回测
综合来看,该策略在2020年1月1日到2023年12月30日的苹果股票历史数据上表现相对较好,取得了16.93%的年化收益率和0.94的夏普比率。这个指标回策的结果也是相当的不错的,但是记住这个只是一个简单的例子,你们可以使用其他的股票进行回测,比如特斯拉,谷歌,微软等等,欢迎大家在留言区进行分享你们的回测结果。原创 2024-03-31 08:00:00 · 1319 阅读 · 0 评论 -
量化交易入门(三十二)什么是BIAS指标以及它的优缺点
总之,BIAS指标是量化交易中一个简单实用的技术指标,通过衡量价格偏离移动平均线的程度,可以帮助判断价格的超买超卖状态、趋势变化和背离情况,为交易决策提供参考。背离判断:当价格创新高而BIAS指标没有创新高时,表示价格与BIAS指标出现背离,可能预示着价格即将下跌;当价格创新低而BIAS指标没有创新低时,表示价格与BIAS指标出现背离,可能预示着价格即将上涨。BIAS指标的原理是,当价格上涨时,BIAS指标为正值,表示价格高于移动平均线;当价格下跌时,BIAS指标为负值,表示价格低于移动平均线。原创 2024-03-31 07:45:00 · 2165 阅读 · 0 评论 -
量化交易入门(三十一)回测框架backtrader-Observers
这对于我们监控交易进度和及时调整策略非常有帮助。总之,Backtrader的Observers模块是一个强大的交易监控工具,它可以帮助我们实时跟踪交易状态,评估策略表现,并及时调整我们的交易决策。通过合理地使用内置Observers和自定义Observers,我们可以构建一个全面、专业的交易监控系统,提高我们的量化交易水平。希望通过这个介绍,你能够深入了解Backtrader的Observers模块,并在交易实践中灵活运用各种Observers,建立一套高效、专业的交易监控体系,为你的量化交易保驾护航!原创 2024-03-31 07:30:00 · 927 阅读 · 0 评论 -
量化交易入门(三十)回测框架backtrader-Feeds
通过灵活运用这些功能,我们可以方便地处理各种类型和频率的交易数据,为我们的交易策略提供高质量的数据支持。总之,Backtrader的Feeds模块是一个强大的数据管理工具,它简化了量化交易中数据的加载、预处理和转换过程。建议你在开发交易策略时,充分利用Feeds模块的功能,选择适合你的数据源和格式,并根据需要对数据进行预处理和转换。希望通过这个介绍,你能够更深入地理解Backtrader的Feeds模块,并在实践中灵活运用它的各种功能,为你的量化交易之路奠定坚实的数据基础!原创 2024-03-30 21:20:08 · 968 阅读 · 0 评论 -
量化交易入门(二十九)布林带指标实现和回测
首先我们来看一张图,这张图就是拿的苹果股票2020年1月1日到2023年12月30日的历史数据进行回测后生成的。图中绿色箭头是买入点,红色箭头是卖出点。我们看到大部分的时候是在股价较低的时候买入,在股价较高的时候卖出,好像挺不错的。具体怎么实现,到底结果怎么样,我们来看代码和运行结果。原创 2024-03-30 08:00:00 · 2084 阅读 · 0 评论 -
量化交易入门(二十七)回撤、收益率、夏普比率
收益率是衡量一个交易策略或投资组合盈利能力的关键指标,表示投资回报与投入本金的比率。收益率 = (卖出价格 - 买入价格) / 买入价格 × 100%绝对收益率:总收益额与初始本金的比率。年化收益率:将总收益换算为年收益率,便于不同时间周期的策略比较。复合年化收益率:考虑了复利效应,即将收益再投资的年化收益率。夏普比率(Sharpe Ratio)由诺贝尔经济学奖得主威廉·夏普(William Sharpe)提出,是衡量投资组合或交易策略风险调整后收益的重要指标。原创 2024-03-30 07:00:00 · 6339 阅读 · 0 评论 -
量化交易入门(二十六)RSI指标实现,能盈利吗?
RSI的理论学完了,我们接着用苹果股票的历史数据来回测一下,看看这个指标靠不靠谱。原创 2024-03-29 07:30:00 · 1333 阅读 · 0 评论 -
量化交易入门(二十五)什么是RSI,原理和炒股实操
前面我们了解了KDJ,MACD,MTM三个技术指标,也进行了回测,结果有好有坏,今天我们来学习第四个指标RSI。RSI指标全称是相对强弱指标(Relative Strength Index),是通过比较一段时期内的平均收盘涨数和平均收盘跌数来分析市场走势的技术指标。RSI是一个实用的中短期技术指标,反映了市场多空双方的力量对比。投资者需要结合其他技术指标、基本面因素,以及自己的风险偏好,合理利用RSI指标辅助判断和操作。其中,RS = 一段时期内收盘价上涨数的平均值 / 一段时期内收盘价下跌数的平均值。原创 2024-03-29 06:30:00 · 1133 阅读 · 0 评论 -
量化交易入门(二十四)MTM指标买卖逻辑和回测
但是,该策略也面临着较大的回撤风险,投资者需要有足够的风险承受能力和长期投资的耐心。此外,回测结果只是基于历史数据的模拟,未来的表现可能与回测结果存在差异。夏普比率衡量了策略的风险调整后收益,即每承受一单位风险,策略能够提供多少超额回报。最大回撤衡量了从高点到低点的最大跌幅,反映了策略可能遭受的最大损失。17.69%的最大回撤说明在最糟糕的情况下,该策略可能会损失17.69%的资产。相比初始的100,000美元,资产实现了105.91%的增长。这表明在回测期间,该MTM策略在苹果股票上取得了不错的收益。原创 2024-03-28 08:00:00 · 1450 阅读 · 0 评论 -
量化交易入门(二十三)什么是MTM指标,原理是什么
综上,MTM指标从价格动量的角度,反映了价格变化的方向、幅度和强度,进而体现了市场趋势的性质和转折,为判断趋势提供了依据。但在具体应用中,还需要考虑指标参数的设置、背离程度的判断、均线系统的选择等问题,并结合其他技术指标和基本面因素,以做出更全面和准确的分析。数值越高,趋势越强:MTM的计算是用当前价格减去N日前的价格,其数值代表了N日内价格的变化幅度。反之,股价创新低而MTM未能创新低,称为底背离,提示下跌动力减弱,股价可能反弹。例如,价格创新高而MTM没有创新高,提示上涨动力减弱,价格可能下跌。原创 2024-03-28 06:00:00 · 2929 阅读 · 0 评论 -
量化交易入门(二十二)MACD指标实现,能挣到钱吗?
哈哈,通过个策略,我们回测的结果是好的,相当于4年挣了50%左右的回报,先开心一下。需要注意的是,回测结果并不能保证未来的表现,市场状况可能发生变化。此外,还应该对策略进行更长时间段的回测,以评估其在不同市场环境下的稳健性。运行该代码后,将对苹果股票在2020年1月1日至2023年12月30日期间进行回测,使用MACD指标作为买卖信号,并绘制回测结果图表。图表将显示股票价格、MACD指标以及策略的买卖点。我们还是使用Backtrader框架,实现MACD的交易策略,然后用苹果股票历史数据完成这个示例。原创 2024-03-27 12:31:19 · 1192 阅读 · 0 评论 -
量化交易入门(二十一)什么是MACD,怎么用来炒股
动量趋势指标(Moving Average Convergence Divergence,简称MACD)是由美国技术分析师Gerald Appel在1970年代提出的一种技术分析指标,它通过对股价的动量和趋势进行分析,预测股价的走势。双重移动平均线系统(Dual Moving Averages System):MACD将26天和12天移动平均线做差,如果26天移动平均线在12天移动平均线之上,则表示股价有上涨趋势;相反,当长天数移动平均线跨越短天数移动平均线时,称为死亡交叉,预示着股价将下跌。原创 2024-03-27 10:34:38 · 929 阅读 · 0 评论 -
Python开发-pandas
我们先用 to_datetime() 函数将Date列转换为日期时间类型,然后用 set_index() 方法将其设置为DataFrame的索引。这里我们将日数据重采样为周数据,并计算每周的最高价、最低价、开盘价(第一个值)、收盘价(最后一个值)和平均成交量。这里'Date'列是日期,'Open','High','Low','Close'是浮点数,'Volume'是整数。多个条件可以用 &(和)、|(或)连接。dropna()函数删除包含缺失值的行,fillna()函数可以将缺失值填充为指定的值。原创 2024-03-23 11:32:51 · 901 阅读 · 0 评论 -
量化交易入门(十五)什么是量化回测,具体的步骤是什么
量化交易其实就是将交易过程按照你定好的交易策略写成程序,然后将需要的股票以及其它你认为需要数据导入其中,通过程序来判断是否买进或者卖出的,然后通过手动或者自动进行股票和期货等的交易过程。但是我的交易策略是否靠谱,能不能通过这个交易策略挣到钱,这个在真正交易之前谁也不知道,通常这些交易策略是不怎么靠谱的,要是有个系统,可以对我的策略进行检验就好了,验证通过了能挣钱的策略才真正去对接股票帐号进行操作,这样能避免好多损失,因此量化回测就涎生了。主要策略:趋势跟踪、均值回归、动量交易、配对交易等。原创 2024-03-24 09:58:29 · 1592 阅读 · 0 评论 -
量化交易入门(十九)KDJ指标和原理
KDJ指标是一种常用的技术分析指标,由乔治·莱恩(George Lane)创立,结合了动量观念、强弱指标与移动平均线的优点,属于超买超卖类指标。总的来说,KDJ指标的原理是通过测量收盘价相对于一定时期内最高价和最低价的位置,来判断股价的超买超卖状态,以及潜在的趋势转折点。同时,通过平滑处理的D值和J值,提高了指标的可靠性和准确性。KDJ指标的原理基于随机振荡指标(Stochastic Oscillator),反映了收盘价在一定周期内相对于最高价和最低价的位置,进而判断价格的超买超卖状态及其可能的趋势转折。原创 2024-03-26 11:03:22 · 1605 阅读 · 0 评论 -
量化交易入门(二十)KDJ指标实现和回测
策略在回测期间产生了负收益,年化收益率和夏普比率都很低,虽然最大回撤较小,但回撤期非常长。负的夏普比率表明策略的风险调整后收益为负,即承担了更多的风险,但获得了更少的收益。这是一个非常长的回撤期,说明策略在这个时期内一直处于亏损状态,难以实现资金的恢复。夏普比率衡量了策略的风险调整后收益,即每承受一单位风险,策略能够获得的超额收益。这个最大回撤值相对较小,说明策略在回测期间的资金曲线比较平稳,没有出现大的下跌。最大回撤为1.24%,表示从策略的最高点到最低点,资金下降了1.24%。原创 2024-03-26 11:05:16 · 1345 阅读 · 0 评论 -
量化交易入门(十八)回测历史数据获取方法
这些是一些常见的免费股票数据源。你可以在 Quandl 网站上搜索并下载所需的股票数据,也可以使用 Python 库 quandl 进行数据获取。前文提到的stock.csv 文件通常包含股票的历史价格数据,每行代表一个交易日的数据。你可以通过 Alpha Vantage 的 API 获取股票的历史价格数据,需要注册并获取 API 密钥。Alpha Vantage 提供免费的股票数据 API,支持多个国家和地区的股票市场数据。你可以通过 IEX Cloud 的 API 获取股票数据,提供免费和付费的计划。原创 2024-03-25 14:20:41 · 1102 阅读 · 0 评论 -
量化交易入门(十七)回测框架Backtrader
总的来说,这段代码定义了一个简单的均线交叉策略,使用 Backtrader 库进行了回测。这为进一步开发和优化交易策略提供了一个良好的起点。Backtrader是一个Python的事件驱动型回测框架,它允许交易者轻松地定义交易策略,并在历史数据上进行回测和优化。Backtrader的设计遵循面向对象的原则,提供了灵活、可扩展、易用的API。这个示例定义了一个简单的双均线交叉策略,当短期均线上穿长期均线时买入,下穿时卖出。Cerebro 是 Backtrader 的核心回测引擎,用于执行策略并分析结果。原创 2024-03-25 13:45:35 · 1873 阅读 · 0 评论 -
量化交易入门(十六)Backtrader、Zipline、PyAlgoTrade对比分析
Zipline专业性强,功能全面;量化交易发展这么多年,有很多优秀的前辈为我们提供了各种开源的交易回测系统,我将对常用的Backtrader、Zipline、PyAlgoTrade这三个量化交易回测平台进行详细介绍,并进行对比分析。概述:Zipline是一个Python的回测框架,由Quantopian开发,功能强大,适合高级用户。专业性强:采用了行业标准的算法和模型,如Fama-French因子模型等,适合机构级别的回测需求。Backtrader:灵活性高,扩展性强,支持多市场多类型策略,社区生态丰富。原创 2024-03-24 10:19:30 · 2670 阅读 · 0 评论 -
Python开发-matplotlib
最后用 autofmt_xdate() 函数自动格式化x轴的日期标签,并显示图表。我们用 subplots() 函数创建一个包含两个子图的图形对象。建议查阅Matplotlib的官方文档和画廊,学习更多的绘图技巧和自定义选项。同时,也可以探索一些基于Matplotlib的高级绘图库,如Seaborn和Plotly,它们提供了更加美观和交互的图表样式。接着设置x轴和y轴的标签,图表标题,x轴刻度的旋转角度,以及显示网格线。Matplotlib是Python中最流行的绘图库,提供了丰富的图表类型和自定义选项。原创 2024-03-23 11:34:06 · 771 阅读 · 0 评论 -
Python开发-NumPy
NumPy是一个功能强大的Python库,专门用于处理大规模的数值型数据。它提供了多维数组对象(ndarray)以及各种数学函数和工具,使得在Python中进行数值计算变得更加高效和便捷。下面我们通过一个量化金融的例子来展示NumPy的应用,在这个例子中,我们将使用NumPy计算股票收益率、风险(标准差)以及股票组合的权重优化。通过使用NumPy,我们可以方便地进行数组的创建、计算和操作,快速实现量化金融中的各种计算和优化任务。原创 2024-03-22 11:13:40 · 373 阅读 · 0 评论 -
Python开发-数据结构
图是一种由节点(Node)和边(Edge)组成的数据结构,用于表示对象之间的关系。图可以是有向的(Directed Graph)或无向的(Undirected Graph)。以下是Python中常见的数据结构:列表,元组,字典,集合,字符串,栈,队列,树,图。字典的键表示节点,对应的值是一个列表,存储与该节点相连的其他节点。在示例代码中,我们创建了一个包含6个节点的无向图,并分别使用深度优先搜索和广度优先搜索对图进行遍历。树是一种层次结构的数据结构,由节点(Node)和边(Edge)组成。原创 2024-03-22 11:12:15 · 832 阅读 · 0 评论 -
Python开发-异常处理
在try块中,我们尝试执行a除以b的操作。如果b为零,将引发ZeroDivisionError异常,程序将跳转到对应的except块中,打印出"除数不能为零!如果没有引发异常,else块中的代码将被执行,打印出除法的结果。最后,无论是否引发异常,finally块中的代码都会被执行,打印出"除法运算完成。如果try块中的代码引发了指定类型的异常,程序将跳转到对应的except块中执行异常处理代码。通过使用异常处理,我们可以优雅地处理程序中可能出现的错误,提高程序的健壮性和可读性。原创 2024-03-21 10:35:57 · 745 阅读 · 0 评论 -
Python开发-模块安装
在Python中,可以使用pip(Python Package Installer)来安装和管理模块。除了使用pip安装模块外,还可以使用其他的包管理工具,如conda或easy_install,它们的使用方法与pip类似。在Windows上,可以按下Win+R键,然后输入"cmd"并按Enter键打开命令提示符。如果pip已安装,将显示版本号。如果未安装,需要先安装pip。如果成功导入numpy模块并打印出版本号,说明安装成功。如果没有出现错误提示,说明模块已成功安装。原创 2024-03-21 10:32:43 · 349 阅读 · 0 评论 -
Python开发-模块开发和常用模块
math.log(x[, base]):计算x的自然对数,如果提供了base,则计算以base为底的x的对数。random 模块还提供了一些其他的函数,如 random.gauss() 用于生成符合高斯分布的随机数,random.expovariate() 用于生成符合指数分布的随机数等。(2)datetime(year, month, day, hour=0, minute=0, second=0, microsecond=0): 创建一个指定日期和时间的 datetime 对象。原创 2024-03-20 10:30:12 · 1390 阅读 · 0 评论 -
Python开发-面向对象和类
在Python中,面向对象(OO)是一种编程范式或思想,它将现实世界中的实体抽象为对象(Object),通过对象之间的交互来解决问题,在量化交易中,它可以帮助我们更好地组织和管理复杂的交易策略和系统。在面向对象编程中,我们把数据和操作数据的方法封装在对象内部,通过对象的属性(Attribute)和方法(Method)来描述对象的特征和行为。通过继承和多态,我们可以创建具有层次结构的类,重用代码,并编写通用的代码来处理不同类型的对象。类(Class):类是对象的蓝图或模板,定义了对象的属性和方法。原创 2024-03-19 17:24:26 · 739 阅读 · 0 评论 -
Python开发-函数和调用
在这个例子中,我们调用了 greet 函数,并传递了字符串 "Alice" 作为参数。(2)参数列表:函数的参数,可以有0个或多个,多个参数之间用逗号分隔。(4)return语句:用于结束函数的执行,并可将函数的执行结果返回给调用者。调用函数时,将实参按位置或名称传递给函数,函数执行完毕后将结果返回给调用者。在这个例子中,greet 是函数名,name 是函数的参数。必选参数是函数调用时必须提供的参数,调用时数量和位置都要和定义时一致。默认参数可以让函数在调用时省略某些参数,若未提供则使用默认值。原创 2024-03-19 10:34:23 · 647 阅读 · 0 评论 -
Python开发-条件判断和循环控制
在这个例子中,if后面的条件表达式是score >= 90,因为score的值是85,所以该条件不成立,接着判断elif后面的条件表达式score >= 80,成立,因此执行紧跟在该elif后面的代码块,打印"良好"。如果i等于3,则执行i += 1语句,将i的值加1,接着执行continue语句,跳过本次循环的剩余代码,继续执行下一次循环。(11)因为i等于3,执行i += 1语句,将i的值加1,此时i的值为4,接着执行continue语句,跳过本次循环的剩余代码,继续执行下一次循环。原创 2024-03-18 15:45:53 · 1179 阅读 · 0 评论 -
Python开发-基本语法
在量化交易中,Python是一种非常流行的编程语言。它简洁、易读、易学,且有丰富的库支持。我将花十章的左右篇幅来介绍这部分知识为后续的开发打好基础,如果你Python已经很熟练了,可以跳过这部分的学习。我使用开发环境是Python3.8为基础,IDE使用的是Vscode,大家可以和我的开发环境保持一致,方便后面例子程序的调试。下面我会逐一介绍变量、数据类型和运算符,并提供相应的示例代码。原创 2024-03-18 15:43:44 · 773 阅读 · 1 评论 -
量化交易入门(三)量化交易学习使用Python的优势
Python 拥有庞大且活跃的开发者社区,你可以轻松找到大量的文档、教程、代码示例、讨论和解决方案等,这对于解决开发中遇到的问题非常有帮助。聚宽量化平台提供类似Python的语言来进行量化策略的编写,自成立以来形成了一个活跃的量化社区。除了上述社区,一些财经论坛如东方财富、雪球等也有专门的量化交易版块,但更偏重投资和交易层面的讨论,量化技术方面的交流相对较少。:Python拥有NumPy、SciPy、Pandas等成熟的科学计算和数据分析库,可以方便地进行向量和矩阵运算、统计分析、数据处理等。原创 2024-03-17 20:55:15 · 768 阅读 · 1 评论 -
量化交易入门(二)量化交易有关的数学和统计学知识
因此,除了上述基础和理论知识,实践技能也很重要,例如使用统计软件(如R、Python中的pandas和scikit-learn等)来处理数据和执行统计分析。在量化分析中,这些线性代数的知识可以帮助你理解和构建各种金融模型,如资产定价模型、风险管理模型等,并且在算法实现和数据处理方面也是非常有用的。量化交易有关的数学和统计学知识包括:高等数学(微积分、线性代数等)、概率论与数理统计是量化分析的基础,时间序列分析是预测市场动向和金融数据分析的关键工具。(一)、在量化分析和量化交易领域,原创 2024-03-17 20:53:51 · 2012 阅读 · 1 评论 -
量化交易入门(一)学习量化交易需要掌握哪些知识
要成为一名成功的量化分析师或量化交易员,通常需要拥有相关领域的高等教育背景,如金融工程、计算金融、数学、统计学、物理学、计算机科学等。此外,不断的学习和实践,以及对市场的敏感洞察力也非常关键。原创 2024-03-17 20:51:31 · 2393 阅读 · 1 评论