到奇狐勝券首頁 奇狐社區論壇 購買奇狐勝券 試用奇狐勝券
 
論壇首頁 你可以在這裡編輯你的資料,查看短訊,訂閱主題和論壇參數等等 免費會員註冊 會員列表 論壇幫助 論壇日曆 論壇搜索 加入我的最愛 登出論壇  
奇狐社區論壇 : Powered by vBulletin version 2.3.0 奇狐社區論壇 > 指標公式 > 問題交流 > [求救]
  上一主題   下一主題
作者
主題 發表新主題    回覆主題
hamson
中級會員

註冊日期: Apr 2004
來  自:
文章數量: 26

[求救]

菜鳥發問 基本語法概念弄不懂請教前輩
ao:=c*0;與ao=c;有何分別各代表意義為何?

CC:=C;
SP1:=barslast(date<>ref(date,1) or barpos=1);
SP2:=barslast(time=091500);
TH:ref(hhv(h,SP1+1),SP2);
TL:ref(llv(L,SP1+1),SP2);
強出:=time>=132500;
限進:=time<=091500;
多進:=REF(C,1)<TL and V>1000 and 強出=0 and 限進=0 or barpos=0;
空進:=REF(C,1)>TH and V>1000 and 強出=0 and 限進=0 or barpos=0;
控損:=10; 控利:=20; 進價:=0; <==此進價=0又代表什麼?
多空:=0; //1.多 -1.空 0.無
進出:C*0 NOAXIS; <==此句與下一句都是c*0是代表什麼意思?
盈虧:c*0 linethick;
for i = 1 to datacount do begin
  if 多空=0 then begin
    多空:=多進[i]-空進[i]; 進出[i]:=多空;
    if 多空<>0 then 進價:=CC[i];
  end else if 多空<>0 then begin
    盈虧[i]:=(CC[i]-進價)*多空;
    if 強出[i] then begin
      進出[i]:=多空*4; 多空:=0;
    end else if 盈虧[i]>=控利 then begin
      進出[i]:=多空*2; 多空:=0;
    end else if 盈虧[i]<=-控損 then begin
      進出[i]:=多空*3; 多空:=0;
    end;
  end;
end;
又若要將倉位顯示出來該如何處理?感恩

向版主報告此篇 | 查IP位址
Old Post 2009-11-06 22:05
hamson 現在離線 點選這裡查看 hamson 的個人資料 點選這裡給 hamson 傳送一條短訊 查找更多關於 hamson 的文章 增加 hamson 至你的好友列表 編輯/刪除訊息 引用回覆
king220.shih
中級會員

註冊日期: Oct 2009
來  自:
文章數量: 38

這個程式是我問的,應該不用新開主題,直接在原版面上發問即可!

我先試著回答一下,若有謬誤,還請網站上的大大指正!

ao:=c*0;與ao=c;有何分別各代表意義為何?
ao是數列,*0只是讓初始值為零。

控損:=10; 控利:=20; 進價:=0; <==此進價=0又代表什麼?

進價是自設變數,是在記憶體上指定一個記憶體空間,初始值設為0

進出:C*0 NOAXIS; <==此句與下一句都是c*0是代表什麼意思?

同上解釋,進出是數列,*0是讓其初始值為零。

又若要將倉位顯示出來該如何處理?感恩

在我另一篇文章中,我有寫出圖示的原碼以及圖檔,可參考 之!

------------------------------------------------------------------

基本上,以上問題,必須要看程式設計的書,才能對程式設計原理
有所了解。不然很難理解。以奇狐的語法來看,與VB的語法很類似
,而且又支援VBS。所以可以從學VB下手。只要了解程式設計的關
念即可。那大致上奇狐的語法即能理解。不外乎是陣列,迴圈,流程控制,以及函數使用等等.....

希望以上解答能對你有幫助,也望路過大大們不吝指正。

向版主報告此篇 | 查IP位址
Old Post 2009-11-06 22:55
king220.shih 現在離線 點選這裡查看 king220.shih 的個人資料 點選這裡給 king220.shih 傳送一條短訊 查找更多關於 king220.shih 的文章 增加 king220.shih 至你的好友列表 編輯/刪除訊息 引用回覆
king220.shih
中級會員

註冊日期: Oct 2009
來  自:
文章數量: 38

ZAry:=C*0; CC:=C;
S30:=time>=132500 or barpos=0; //強制出場
S11:=ref(c<o and v>4000,1) and S30=0 or barpos=0; //多進
S12:=ref(c>o and v<1000,1) or barpos=0; //多出
S21:=ref(c>o and v>4000,1) and S30=0 or barpos=0; //空進
S22:=ref(c<o and v<1000,1) or barpos=0; //空出
盈虧:ZAry linethick0;
進出:ZAry;
多空:=0; //1.多 -1.空 0.無
做價:=0; 停損:=30;
for i = lbound(ZAry) to datacount do begin
if 多空=0 then begin
多空:=S11[i]-S21[i]; 進出[i]:=多空;
if 多空<>0 then 做價:=CC[i];
end else if 多空<>0 then begin
盈虧[i]:=(CC[i]-做價)*多空;
CKO:=S12[i]-S22[i];
if CKO=多空 then begin
進出[i]:=CKO*2; 多空:=0;
end else if S30[i] then begin
進出[i]:=多空*3; 多空:=0;
end else if 盈虧[i]<-停損 then begin
進出[i]:=多空*4; 多空:=0;
end;
end;
end;

//[進出] 這變數值代表意義如下:
//1.為多單進場, 2.為多單平倉, 3.為多單強制平倉, 4.為多單控損平倉
//-1.為空單賣出,-2.為空單回補,-3.為空單強制回補,-4.為空單控損回補

DRAWICON(進出=1,L,4),PXDN40;
DRAWNUMBER(進出=1,L,O,0),PXDN70,COLORRED,ALIGN0;
DRAWTEXT(進出=1,L,'多單進場'),PXDN100,COLORYELLOW,ALIGN0;

DRAWICON(進出=2,H,5),PXUP40;
DRAWNUMBER(進出=2,H,O,0),PXUP70,COLORGREEN,ALIGN0;
DRAWTEXT(進出=2,H,'多單平倉'),PXUP100,COLORYELLOW,ALIGN0;

DRAWICON(進出=3,H,5),PXUP40;
DRAWNUMBER(進出=3,H,O,0),PXUP70,COLORGREEN,ALIGN0;
DRAWTEXT(進出=3,H,'多單強制平倉'),PXUP100,COLORYELLOW,ALIGN0;

DRAWICON(進出=4,H,5),PXUP40;
DRAWNUMBER(進出=4,H,O,0),PXUP70,COLORGREEN,ALIGN0;
DRAWTEXT(進出=4,H,'多單控損平倉'),PXUP100,COLORYELLOW,ALIGN0;

DRAWICON(進出=-1,H,5),PXUP40;
DRAWNUMBER(進出=-1,H,O,0),PXUP70,COLORGREEN,ALIGN0;
DRAWTEXT(進出=-1,H,'空單賣出'),PXUP100,COLORYELLOW,ALIGN0;

DRAWICON(進出=-2,L,4),PXDN40;
DRAWNUMBER(進出=-2,L,O,0),PXDN70,COLORRED,ALIGN0;
DRAWTEXT(進出=-2,L,'空單回補'),PXDN100,COLORYELLOW,ALIGN0;

DRAWICON(進出=-3,L,4),PXDN40;
DRAWNUMBER(進出=-3,L,O,0),PXDN70,COLORRED,ALIGN0;
DRAWTEXT(進出=-3,L,'空單強制回補'),PXDN100,COLORYELLOW,ALIGN0;

DRAWICON(進出=-4,L,4),PXDN40;
DRAWNUMBER(進出=-4,L,O,0),PXDN70,COLORRED,ALIGN0;
DRAWTEXT(進出=-4,L,'空單控損回補'),PXDN100,COLORYELLOW,ALIGN0;

向版主報告此篇 | 查IP位址
Old Post 2009-11-06 22:59
king220.shih 現在離線 點選這裡查看 king220.shih 的個人資料 點選這裡給 king220.shih 傳送一條短訊 查找更多關於 king220.shih 的文章 增加 king220.shih 至你的好友列表 編輯/刪除訊息 引用回覆
king220.shih
中級會員

註冊日期: Oct 2009
來  自:
文章數量: 38

CC:=C;
SP1:=barslast(date<>ref(date,1) or barpos=1);
SP2:=barslast(time=085000);
TH:ref(hhv(h,SP1+1),SP2);
TL:ref(llv(L,SP1+1),SP2);
強出:=time>=132500;
限進:=time<=091500;
多進:=REF(c,1)<TL and REF(v,1)>1000 and 強出=0 and 限進=0 or barpos=0;
空進:=REF(C,1)>TH and REF(v,1)>1000 and 強出=0 and 限進=0 or barpos=0;
控損:=10; 控利:=50; 進價:=0;
多空:=0; //1.多 -1.空 0.無
進出:C*0 linethick;
盈虧:c*0 linethick;
for i = 1 to datacount do begin
if 多空=0 then begin
多空:=多進[i]-空進[i]; 進出[i]:=多空;
if 多空<>0 then 進價:=CC[i];
end else if 多空<>0 then begin
盈虧[i]:=(CC[i]-進價)*多空;
if 強出[i] then begin
進出[i]:=多空*4; 多空:=0;
end else if 盈虧[i]>=控利 then begin
進出[i]:=多空*2; 多空:=0;
end else if 盈虧[i]<=-控損 then begin
進出[i]:=多空*3; 多空:=0;
end;
end;
end;

//進出] 這變數值代表意義如下:
//1.多單進場, 2.多控利出, 3.多控損出, 4.多強制出場
//-1.空單進場,-2.空控利出,-3.空控損出,-4.空強制出場

DRAWICON(進出=1,L,4),PXDN40;
DRAWNUMBER(進出=1,L,CC,0),PXDN70,COLORRED,ALIGN0;
DRAWTEXT(進出=1,L,'多單進場'),PXDN100,COLORYELLOW,ALIGN0;

DRAWICON(進出=2,H,1),PXUP40;
DRAWNUMBER(進出=2,H,盈虧,0),PXUP70,COLORRED,ALIGN0;
DRAWTEXT(進出=2,H,'多控利出'),PXUP100,COLORYELLOW,ALIGN0;

DRAWICON(進出=3,H,2),PXUP40;
DRAWNUMBER(進出=3,H,盈虧,0),PXUP70,COLORGREEN,ALIGN0;
DRAWTEXT(進出=3,H,'多控損出'),PXUP100,COLORYELLOW,ALIGN0;

DRAWICON(進出=4,H,5),PXUP40;
DRAWNUMBER(進出=4,H,O,0),PXUP70,COLORGREEN,ALIGN0;
DRAWTEXT(進出=4,H,'多強制出場'),PXUP100,COLORYELLOW,ALIGN0;

DRAWICON(進出=-1,H,5),PXUP40;
DRAWNUMBER(進出=-1,H,CC,0),PXUP70,COLORGREEN,ALIGN0;
DRAWTEXT(進出=-1,H,'空單進場'),PXUP100,COLORYELLOW,ALIGN0;

DRAWICON(進出=-2,L,1),PXDN40;
DRAWNUMBER(進出=-2,L,盈虧,0),PXDN70,COLORRED,ALIGN0;
DRAWTEXT(進出=-2,L,'空控利出'),PXDN100,COLORYELLOW,ALIGN0;

DRAWICON(進出=-3,L,2),PXDN40;
DRAWNUMBER(進出=-3,L,盈虧,0),PXDN70,COLORGREEN,ALIGN0;
DRAWTEXT(進出=-3,L,'空控損出'),PXDN100,COLORYELLOW,ALIGN0;

DRAWICON(進出=-4,L,4),PXDN40;
DRAWNUMBER(進出=-4,L,O,0),PXDN70,COLORRED,ALIGN0;
DRAWTEXT(進出=-4,L,'空強制出場'),PXDN100,COLORYELLOW,ALIGN0;

向版主報告此篇 | 查IP位址
Old Post 2009-11-07 22:49
king220.shih 現在離線 點選這裡查看 king220.shih 的個人資料 點選這裡給 king220.shih 傳送一條短訊 查找更多關於 king220.shih 的文章 增加 king220.shih 至你的好友列表 編輯/刪除訊息 引用回覆
hamson
中級會員

註冊日期: Apr 2004
來  自:
文章數量: 26

感謝king220.shih大大熱心幫忙,
依大大所發原碼,小弟引入放在主圖則ok若放在附圖,則發現有些訊號箭頭或文字看不見用PXDN/PXUP處理也無法調進畫面來,請問有何解決方案?感恩!!!

向版主報告此篇 | 查IP位址
Old Post 2009-11-08 01:51
hamson 現在離線 點選這裡查看 hamson 的個人資料 點選這裡給 hamson 傳送一條短訊 查找更多關於 hamson 的文章 增加 hamson 至你的好友列表 編輯/刪除訊息 引用回覆
king220.shih
中級會員

註冊日期: Oct 2009
來  自:
文章數量: 38

附圖喔!這好像不太適合放在附圖耶!
我也很少寫附圖的程式。可能要請教別人喔!

向版主報告此篇 | 查IP位址
Old Post 2009-11-08 02:54
king220.shih 現在離線 點選這裡查看 king220.shih 的個人資料 點選這裡給 king220.shih 傳送一條短訊 查找更多關於 king220.shih 的文章 增加 king220.shih 至你的好友列表 編輯/刪除訊息 引用回覆
july2008
資深會員

註冊日期: Aug 2008
來  自: 台中
文章數量: 106

引用:
最初由 hamson 發表
感謝king220.shih大大熱心幫忙,
依大大所發原碼,小弟引入放在主圖則ok若放在附圖,則發現有些訊號箭頭或文字看不見用PXDN/PXUP處理也無法調進畫面來,請問有何解決方案?感恩!!!



試試用這個 ALIGN 放在最後面

向版主報告此篇 | 查IP位址
Old Post 2009-11-08 13:09
july2008 現在離線 點選這裡查看 july2008 的個人資料 點選這裡給 july2008 傳送一條短訊 查找更多關於 july2008 的文章 增加 july2008 至你的好友列表 編輯/刪除訊息 引用回覆
hamson
中級會員

註冊日期: Apr 2004
來  自:
文章數量: 26

感謝指導 再請教以下例子
CC:=C;
SP1:=barslast(date<>ref(date,1) or barpos=1);
SP2:=barslast(time=084500);
TH:ref(hhv(h,SP1+1),SP2);
TL:ref(llv(L,SP1+1),SP2);
強出:=time>=134400;
限進:=time<=084500;
多進:=REF(C,1)<TL and V>1000 and 強出=0 and 限進=0 or barpos=0;
空進:=REF(C,1)>TH and V>1000 and 強出=0 and 限進=0 or barpos=0;
控損:=10; 控利:=20; 進價:=0;
多空:=0; //1.多 -1.空 0.無
進出:C*0 NOAXIS;
盈虧:c*0 linethick;
for i = 1 to datacount do begin
if 多空=0 then begin
多空:=多進[i]-空進[i]; 進出[i]:=多空;
if 多空<>0 then 進價:=CC[i];
end else if 多空<>0 then begin
盈虧[i]:=(CC[i]-進價)*多空;
if 強出[i] then begin
進出[i]:=多空*4; 多空:=0;
end else if 盈虧[i]>=控利 then begin
進出[i]:=多空*2; 多空:=0;
end else if 盈虧[i]<=-控損 then begin
進出[i]:=多空*3; 多空:=0;
end;
end;
end;
要將此轉文字檔到下單機,我在網路上查到用下列語法輸入
cur_cmd:=numtostr(year,0) + '/' +numtostr(month,0)+ '/'+numtostr(day,0) + ' ' +numtostr(hour,0)+':'+numtostr(minute,0)+':00,'+numtostr(MarketPosition,0)+','+ numtostr(c,0)+'';
<%
on error resume next
Dim fso, MyFile
cur_cmd5= FFL.VarData("cur_cmd")
Set fso = CreateObject("Scripting.FileSystemObject")
Set MyFile = fso.CreateTextFile("d:\winner\cur_cmd.txt", True)
MyFile.WriteLine(cur_cmd)
MyFile.Close
err.clear
%>
現在問題是此處之"MarketPosition"以上例言是要導入哪一個?多空?進出?進價?又該如何導入?因我多次測試均無法在文字檔中產生文字,下單機會出現"策略檔案格式錯誤,無法取得目前倉位"
再次感謝各位指導!!!MarketPosition

向版主報告此篇 | 查IP位址
Old Post 2009-11-08 17:23
hamson 現在離線 點選這裡查看 hamson 的個人資料 點選這裡給 hamson 傳送一條短訊 查找更多關於 hamson 的文章 增加 hamson 至你的好友列表 編輯/刪除訊息 引用回覆
全部時間均為台灣時間, 現在時間為01:03 發表新主題    回覆主題
  上一主題   下一主題
顯示可列印版本 | 訂閱此主題

論壇跳轉:
主題評分:

論壇規定:
你不可以發表新主題
你不可以回覆文章
你不可以上傳附件
你不可以編輯自己的文章
HTML語法禁止
vB 語法核准
表情符號核准
貼圖語法[IMG]核准
 

本站所有內容未經作者授權禁止轉貼節錄, 發表言論僅供參考勿作為投資決策依據。瀏覽本站請使用 IE 5.5 以上版本, 最佳瀏覽解析度 1024 x 768 全彩。

Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.

簡愛洋行 製作 Copyright 2003-. All Rights Reserved.  聯絡我們