目前用 TradingView 脚本信号串联交易所自动交易,但是脚本有点小问题,极端行情下容易亏损,自己不会修改,本来打算借助 ChatGPT 改,但改了半天达不到效果。。。
1
noobsheldon 227 天前 1
show me the code
|
2
ShiftWang OP 我 Notion 链接 https://shuaifei.notion.site/SRP-Strategy-64ba6f38969f4e5188fafc1602d136b8?pvs=4
这是个 TradingView 里面的开源 PineScript 脚本,我用 GPT 做了注释,脚本的核心就是 DCA 马丁加仓,细节是仓位大小和进出场时机控制,现在有个问题,就是极端行情,会在短时间内频繁加仓。我想加入一个时间间隔控制选项,加仓规则在满足余原有策略的同时,也满足时间间隔才会加仓,我不懂编程搞了半天没搞出来。 |
3
noobsheldon 226 天前
判断条件看起来没问题, 你这是在哪个交易品种, 什么级别, 什么时间段上回测的? 建议你先在 isTimeIntervalPassed 函数中用 log.info("上次时间 {0} 当前时间 {1}", astOrderTime, timenow) 打印一下日志看看; 另外如果想控制加仓间隔可以使用: ta.barsince(SOconditions()) 这种方式来判断(配合 timeframe).
|
4
ShiftWang OP SUI/SOL/TIA ,等等的永续合约,一般是 8 钟到 15 分钟 K 线( TV 高级版会员,初级版会员是 30 分钟左右 K 线),全历史周期,加仓逻辑那里有 Volume 和 Base 可以切换,效果变化会很大。代码我只会 GPT ,加入 GPT 代码的效果是只能进出场,不会加仓。大哥有兴趣测试下,我估计是时间间隔跟原有的加仓逻辑有冲突导致的,搞不定😂
|
5
noobsheldon 226 天前 1
我调试了一下, 把你注释解开; 然后把代码所有的 timenow 替换成 time(timeframe ='', bars_back = 0 ) 应该就能正常控制时间了; timenow 返回的是此时此刻的时间, time(timeframe ='', bars_back = 0 ) 是运行到某个 K 线柱时的时间戳; 这两者是不一样.
|
6
ShiftWang OP |