求助,代码无法通过编译,请帮忙指出问题
我是新手,写了个指标,但在 PowerLanguage Editor 总是无法通过编译,请帮忙指出问题,不胜感激。代码如下:
DefineDLLFunc: "D:\FILES\STOCK\GVA dll", float, "GVA";
Inputs:
Length(200),//
initialCapital(100000),
frame_ddays(10),
frame_pdays(250), //
contr(1), //shares(100)
Money(0.3);
arw.size(18);//箭头大小
variables:
var1 = GVA(close,Length);//指标值
var2 = lowstoploss=lowest(low,frame_pdays);//多头停损点
var3 = highstoploss=highest(high,frame_pdays);//空头停损点
var4 = lowdiffer=AbsValue(entryprice-lowstoploss);//
var5 = highdiffer=AbsValue(hithstoploss-entryprice);//
var6 = RiskPercent(Money);
var7 = TotalEquity=initialCapital+NetProfit;
var8 = Exitloss= TotalEquity * RiskPercent;
var9 = id.arw(-1);//箭头
condition1=highest(var1,frame_ddays)<20;
condition2=close>close;
condition3=close<close;
condition4=Exitloss > lowdiffer;
condition5=Exitloss > highdiffer;
//Entry Order
if condition1 and condition2 then
begin sellshort contr next bar at market;
end else if then condition1 and condition3
begin buy contr next bar at market;
end;
// Exit conditions for long
once condition4 begin setstoploss(Exitloss);
end;
if MarketPosition = 1 then begin
setDollarTraing((lowdiffer)*Bigpointvalue);
end ;
// Exit conditions for short
once condition5 begin setstoploss(Exitloss);
end;
if MarketPosition = -1 then begin
setDollarTraing((highdiffer)*Bigpointvalue);
end;
// 画出并标示做多箭头向上蓝色改变该K线颜色
if condition1 and condition3 then
begin
id.arw = ARW_new(date, time, low, false);
ARW_setsize(id.arw, arw.size);
Arw_SetText(id.arw , "Buy");
Arw_SetColor(id.arw , Blue);
PlotPaintBar(high,low,open,close,"",Blue);
end
// 画出并标示做空买入箭头向下红色改变该K线颜色
if condition1 and condition2 then
begin
id.arw = ARW_new(date, time, high, true);
ARW_setsize(id.arw, arw.size);
Arw_SetText(id.arw , "Sellshort");
Arw_SetColor(id.arw , Red);
PlotPaintBar(high,low,open,close,"",Red);
end
// 标出停损点
Plot1(lowstoploss,"LongOut",yellow);
Plot2(highstoploss,"ShortOut",yellow);
//画出GVA 指标
Plot3(var1,"GVA",Green);
没有人愿意帮忙吗? yonghu123 發表於 12-10-17 15:11 static/image/common/back.gif
没有人愿意帮忙吗?
真的錯很多ㄟ..我也是初學
那本powerlanguage程式交易語法大全去翻翻吧
圖書館也有
指標和訊號要分2個程式 函數都不對..是PowerLanguage ? 您好,那本书我已经有了,只是里面完整的例子几乎没有,所以只能照猫画虎。请问一下您说的错误的函数是指哪个,谢谢了。 好像需要有GVA.dll 這個檔案吧{:4_144:} 要不要把GVA.dll給我, 我幫你試試看...
這個程式要吃GVA.dll檔才能進一步驗證! 本帖最後由 yonghu123 於 12-10-20 17:51 編輯
谢谢,不过我觉得和那个Dll 文件无关。
比如我将指标改成RSI
value1 = RSI(close,Length);
到这一行它总是提示我
------ Compiled with error(s): ------
'('Expected
errLine 13, errColumn 7, errLineEnd 13, errColumnEnd 7
causal study:(Function)
似乎应该是语法或函数上的问题,可惜我目前还不明白。
因为这个程序非常简单,大概意思就是:
调用一个事先写好的指标GVA ,该指标只用收盘价计算没有其他参数,
不知道这一行
DefineDLLFunc: "D:\FILES\STOCK\GVA dll", float, "GVA",(最后这里参数部分要写什么吗?我看书上只是写的数据类型);
然后根据条件做多或者做空,用两个条件止损。
最后画出图,就是这些。
问题在哪呢?
yonghu123 發表於 12-10-20 17:50 static/image/common/back.gif
谢谢,不过我觉得和那个Dll 文件无关。
比如我将指标改成RSI
提供GVA.dll 才方便其他人幫你{:4_93:}
頁:
[1]