金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
楼主: 103327

自动收盘的困惑

[复制链接]

6

主题

61

帖子

61

积分

Rank: 4

等级: 专业版

注册:
2023-4-6
曾用名:
 楼主| 发表于 2024-10-29 16:41 | 显示全部楼层
或者说可不可以分两个策略来执行,一个多单策略,一个空单策略
回复

使用道具 举报

1

主题

4232

帖子

4232

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2024-10-29 16:42 | 显示全部楼层
分成2个策略肯定是可以的。
回复

使用道具 举报

6

主题

61

帖子

61

积分

Rank: 4

等级: 专业版

注册:
2023-4-6
曾用名:
 楼主| 发表于 2024-10-29 16:51 | 显示全部楼层
在一个后台程序里怎么实现,麻烦简单示例代码说明一下,谢谢
回复

使用道具 举报

1

主题

4232

帖子

4232

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2024-10-29 16:54 | 显示全部楼层
本帖最后由 资深技术05 于 2024-10-29 17:03 编辑

图表得话 就是你开多-平多的单独在一个策略,开空-平空的在一个策略里。这样就可以实现锁仓,但是缺点也很明显,这个锁仓2个策略之间是没有联动的。“多单亏损0.2时开空单对锁,下次开多信号是平空单” 这样的需求在图表上分开策略也是是肯定做不到的。

后台里是可以直接锁仓的。后台下单没有限制。但是你这个锁仓逻辑必须完整才行。比如你平多转开空锁仓了,那这时候如果有空头的信号 你后续逻辑又是怎样的呢?
很多地方你需要考虑完整 我们才能评估这个逻辑能否写下去。
回复

使用道具 举报

6

主题

61

帖子

61

积分

Rank: 4

等级: 专业版

注册:
2023-4-6
曾用名:
 楼主| 发表于 2024-10-29 17:05 | 显示全部楼层
在图表里开多单的条件不是一个具体的价格,要将开多单时的条件转换为价格怎么实现,或者说在空单里是要求开多单的位置下跌多少时开空,这种怎么去实现呢?
或者说将开多单时保存一个虚拟的价格,代码怎么实现?
A:=EMA(LOW,36);
B:=EMA(HIGH,30);
F:=85;
K:=95;
D:=(EMA(((CLOSE-A)/(B-A))*(4),4))*(25);
G:=D,COLORRED,LINETHICK2;
G1:=D<REF(D,5);


I:=(((D-LLV(D,21))/(HHV(D,21)-LLV(D,21)))*(4))*(25);
M:=IF(CROSS(H,20) AND (G<40),70,0);
Z:=8;

H1:=MAX(DYNAINFO(3),DYNAINFO(5));
L1:=MIN(DYNAINFO(3),DYNAINFO(6));
P1:=H1-L1;
阻力:=L1+P1*7/8,COLORGREEN;
支撑:=L1+P1*0.5/8,COLORRED;
中线1:=(支撑+阻力)/2;
V11:=3*SMA((C-LLV(L,55))/(HHV(H,55)-LLV(L,55))*100,5,1)-2*SMA(SMA((C-LLV(L,55))/(HHV(H,55)-LLV(L,55))*100,5,1),3,1);
趋势线:=EMA(V11,3),LINETHICK2,COLORLIMAGENTA;
V12:=(趋势线-REF(趋势线,1))/REF(趋势线,1)*100;
准备买入:=STICKLINE(趋势线<11,趋势线,11,5,0);
AA:=(趋势线<11) AND FILTER((趋势线<=11),15) AND C<中线1;
BB0:=REF(趋势线,1)<11 AND CROSS(趋势线,11) AND C<中线1;
BB1:=REF(趋势线,1)<11 AND REF(趋势线,1)>6 AND CROSS(趋势线,11);
BB2:=REF(趋势线,1)<6 AND REF(趋势线,1)>3 AND CROSS(趋势线,6);
BB3:=REF(趋势线,1)<3 AND REF(趋势线,1)>1 AND CROSS(趋势线,3);
BB4:=REF(趋势线,1)<1 AND REF(趋势线,1)>0 AND CROSS(趋势线,1);
BB5:=REF(趋势线,1)<0 AND CROSS(趋势线,0);
BB:=BB1=1 OR BB2=1 OR BB3=1 OR BB4=1 OR BB5=1;
XD:=BB=1 AND C<中线1;
SJ:=REF(BARSLAST(XD),1)+1;
SJ1:=SJ>=1 AND SJ<=10;
A1:=C<MA(C,5);
B2:=A1 AND SJ1;
B1:=REF(BARSLAST(B2),1)+1;
B3:=B1>=1 AND B1<=20;
XC:=C>MA(C,5) AND REF(C,1)<MA(C,5) AND COUNT((C>MA(C,5) AND REF(C,1)<MA(C,5)),B3)=1 AND B3;
D1:=(C-REF(C,1))/REF(C,1)*100;
D2:=SUM(D1,10)<=0.3;
XC1:=XC AND D2;
XC2:=SUM(XC1,B1)=2;
XC5:BARSLAST(XC2)=1;
回复

使用道具 举报

1

主题

4232

帖子

4232

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2024-10-30 08:58 | 显示全部楼层
如果你要记录触发开多条件时候的价格,你只能用全局变量进行记录。

VARIABLE:p1:=0;

if  开多条件 then p1:=c;

如果你的开多条件多次满足,那么p1会始终更新到最新值。所以你这个最好是控制好这个开仓条件。正常开仓时候是有仓位限制的,但是这种不下单 只记录的 是有可能在后续多次满足的。
回复

使用道具 举报

6

主题

61

帖子

61

积分

Rank: 4

等级: 专业版

注册:
2023-4-6
曾用名:
 楼主| 发表于 2024-11-4 19:12 | 显示全部楼层
好的,谢谢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 微信登录

本版积分规则

手机版|小黑屋|上海金之塔信息技术有限公司 ( 沪ICP备13035422号 )

GMT+8, 2024-11-13 05:02 , Processed in 0.284481 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表