问题:

  Ptrade研究环境,在删除文件时报错“删除失败 - Failed to fetch”,请问这是怎么回事?

原因和解决方法:

  这个问题属于GUI层面的故障,已知国金证券的PTrade存在这个问题(截至2026年3月)。

  经阿猪测试,直接使用Python语句仍然可以删除文件。

  在回测模式下新建一个策略,输入如下代码,然后点击“回测”按钮运行代码,即可删除指定目录下的所有文件:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
from pathlib import Path
import shutil

def initialize(context):
def delete_all_contents_in_folder(folder_path):
folder = Path(folder_path)

# 确保文件夹存在
if not folder.exists():
print(f"文件夹 {folder_path} 不存在")
return

# 遍历文件夹中的所有内容
for item in folder.iterdir():
try:
if item.is_dir():
# 如果是文件夹,使用 shutil.rmtree 强制删除整个目录树
shutil.rmtree(item)
print(f"已删除文件夹: {item.name}")
else:
# 如果是文件,使用 unlink 删除
item.unlink()
print(f"已删除文件: {item.name}")
except Exception as e:
# 捕获异常并打印
print(f"跳过项目 (删除失败): {item.name}, 错误: {e}")

# 示例用法
try:
folder_path = get_research_path() # 指定要删除的目录(此处为研究环境的根目录,可自行替换)
delete_all_contents_in_folder(folder_path)
except NameError:
print("提供的路径有误")

  以上仅为示例代码,大家可根据自己的需求做调整。