即時盤中漲幅可自行設定幾%、

  •   236 
  • 最後發表   dragon888148  4 天前
dragon888148 發文於   2026/07/01

即時盤中漲幅可自行設定漲幾%、盤中設定成交量多少、外盤大於內盤、外盤大於內盤差、不能當沖排除我試著去做這些腳本

有編譯不成功有找出來的股票看起來不是過濾的條件煩請會的人賜教

排序方式: 標準 | 最新
虎科大許教授 發文於   2026/07/01

你需要提供程式碼,不然如何得知是哪裡編譯出問題(編譯錯誤)?或是找出的不是你要的股票(邏輯錯誤)?

dragon888148 發文於   2026/07/01

好的感謝您的回覆

dragon888148 發文於   2026/07/01

 if open >=close[1]*1.04

and volume*close>3000

then ret=1;

這個是軟體內提供的、加入策略雷達出來的股票小於4%也出來然後到警示中心我加入這個策略一個都沒有

我想要的是開盤前就先設好這條件如果一開盤就漲4%同時成交量大於3000張就LIST呈現出來

排除不能當沖的語法目前找不到如果有懇請賜教

虎科大許教授 發文於   2026/07/01

(1)成交量大於3000張,正確的寫法:volume>3000

(2)排除禁止當沖的股票。使用日頻率,一開盤漲4%就警示的警示腳本寫法:

if barfreq<>"D" then raiseRunTimeError("限用日頻率!");

if GetSymbolInfo("買賣現沖")=false then raiseRunTimeError("禁止當沖,排除監控!");

if open >=close[1]*1.04 and volume>3000 then ret=1;

 

dragon888148 發文於   2026/07/01

您好感謝您的回覆、

 

if barfreq<>"D" then raiseRunTimeError("限用日頻率!");

 

if GetSymbolInfo("買賣現沖")=false then raiseRunTimeError("禁止當沖,排除監控!");

 

if open >=close[1]*1.04 and volume>3000 then ret=1;

請問是把這3段code寫在同一腳本嗎

虎科大許教授 發文於   2026/07/01

是的。

dragon888148 發文於   2026/07/02

if barfreq<>"D" then raiseRunTimeError("限用日頻率!");

if GetSymbolInfo("買賣現沖")=false then raiseRunTimeError("禁止當沖,排除監控!");

if open >=close[1]*1.04 and volume>3000 then ret=1;

上面是 您給的腳本

 

不過今天策略雷達盤中觸發的股票

並不是上漲2%可沖股票

(有的股票上漲0點幾%不是2%也被觸發?如下圖)

 

 

 

虎科大許教授 發文於   2026/07/02

(1)上漲2%,要將1.04改成1.02。

(2)你看到的漲跌趴數是按照目前價格算出的趴數,而非開盤時的漲跌趴數,而你要的是開盤漲跌趴數,不是嗎?

dragon888148 發文於   2026/07/02

 

我前面的文章文字敘述有問題更改應該是4%、腳本是4%

if open >=close[1]*1.04 and volume>3000 then ret=1;

上面這段的意思是昨日收盤股價*1.04成交量大於3000張同時滿足這2個條件的股票應該盤中呈現出來

可是為什麼小於4%也會出來

我有附一張三竹資訊給您看圖中我的條件是漲6%以及成交量大於2000這時篩選的股票就會呈現LIST出來因為三竹沒有排除不可當沖

所以我選擇用全球贏家可以自已設計腳本麻煩請您看一下謝謝

 

dragon888148 發文於   2026/07/02
dragon888148 發文於   2026/07/02

我將我所有的程序請您看一下為什麼即時監控都沒有篩選的股票以及執行紀錄觸發商品請問我的操作有錯嗎謝謝您

dragon888148 發文於   2026/07/02

其實我有給客服看過她說沒問題客服說腳本那方面還是要請您再看一次感謝您

虎科大許教授 發文於   2026/07/02

請舉例說明,開盤漲超過4%且成交張數超過3000張,卻沒有被選出來的股票,以及開盤沒漲超過4%且也被選出來的股票。

dragon888148 發文於   2026/07/02

我以這個圖片為例子我設的條件是大於6%成交量大於2000張這時就會出來符合我要股票煩請看一下圖片謝謝您

 

虎科大許教授 發文於   2026/07/02

宏遠、力鵬、力麗禁止買賣現沖。

合晶的開盤價沒有符合漲6%的條件。

按照腳本的條件,這四檔都不會出現警示。

 

dragon888148 發文於   2026/07/02

合晶我是在11.26分時操作的當時以達6%以上

所以我要換全球贏家三竹資訊沒有排除不能當沖的股票上面的圖是三竹資訊

以下的CODE在全球贏家今天執行完全沒一張股票呈現出來上面我有附圖所有的流程

如果以下的CODE是對的那為什麼沒有呈現符合條件的股票不知那裏錯了還請賜教

if barfreq<>"D" then raiseRunTimeError("限用日頻率!");

if GetSymbolInfo("買賣現沖")=false then raiseRunTimeError("禁止當沖,排除監控!");

if open >=close[1]*1.04 and volume>3000 then ret=1;

不是只有開盤時也要有盤中我要的是我設定漲%、成交量大於我設定的數字、排除不能當沖的股票只要符合即時呈現就像三竹資訊宏遠、力鵬、力麗、合晶在11.26分鐘符合條件就呈現三竹不能設排除不能當沖非、常感謝教授的賜教

虎科大許教授 發文於   2026/07/02

開盤漲6%與現在漲6%表達方式不一樣。你想要盤中漲6%就警示,應該把open改成close。

if close >=close[1]*1.06 and volume>3000 then ret=1;

若你希望禁止現沖的股票也警示,就像三竹一樣,就要把第二行禁止買賣現沖的指令刪除。若希望只警示可以買賣現沖的股票,則腳本可撰寫如下:

if barfreq<>"D" then raiseRunTimeError("限用日頻率!");
if GetSymbolInfo("買賣現沖")=false then raiseRunTimeError("禁止當沖,排除監控!");
if close >=close[1]*1.06 and volume>3000 then ret=1;

dragon888148 發文於   2026/07/02

感謝您的回覆明天試一試再跟您報告晚安

dragon888148 發文於   2026/07/03

 

 

 

這個條件應該執行每日、不能現沖的股票排除不監控、盤中到達昨日的收盤*1.02也就是漲2%、成交量大於3000張、這時加入策略雷達啟動監控在早上、還沒有開盤就開始跳0%的也出來

您好我用了您所提供的CODE也不行

if barfreq<>"D" then raiseRunTimeError("限用日頻率!");

if GetSymbolInfo("買賣現沖")=false then raiseRunTimeError("禁止當沖,排除監控!");

if close >=close[1]*1.02 and volume>500 then ret=1;

到了盤中也一樣有問題請看圖片

有好幾檔可以當沖卻被列為不能當沖當時忙沒有即時拍照我有寫下代號我都有去查都可以當沖

煩請幫我看一下謝謝您

 

 

dragon888148 發文於   2026/07/03

 

 

 

這個條件應該執行每日、不能現沖的股票排除不監控、盤中到達昨日的收盤*1.02也就是漲2%、成交量大於3000張、這時加入策略雷達啟動監控在早上、還沒有開盤就開始跳0%的也出來

您好我用了您所提供的CODE也不行

if barfreq<>"D" then raiseRunTimeError("限用日頻率!");

if GetSymbolInfo("買賣現沖")=false then raiseRunTimeError("禁止當沖,排除監控!");

if close >=close[1]*1.02 and volume>500 then ret=1;

到了盤中也一樣有問題請看圖片

有好幾檔可以當沖卻被列為不能當沖當時忙沒有即時拍照我有寫下代號我都有去查都可以當沖

煩請幫我看一下謝謝您

 

 

dragon888148 發文於   2026/07/03

 

 

 

這個條件應該執行每日、不能現沖的股票排除不監控、盤中到達昨日的收盤*1.02也就是漲2%、成交量大於3000張、這時加入策略雷達啟動監控在早上、還沒有開盤就開始跳0%的也出來

您好我用了您所提供的CODE也不行

if barfreq<>"D" then raiseRunTimeError("限用日頻率!");

if GetSymbolInfo("買賣現沖")=false then raiseRunTimeError("禁止當沖,排除監控!");

if close >=close[1]*1.02 and volume>500 then ret=1;

到了盤中也一樣有問題請看圖片

有好幾檔可以當沖卻被列為不能當沖當時忙沒有即時拍照我有寫下代號我都有去查都可以當沖

煩請幫我看一下謝謝您

 

 

dragon888148 發文於   2026/07/03
dragon888148 發文於   2026/07/03

不知什麼原因系統不讓我加入圖片了

現在的情況就是不管開盤前開盤中都無法呈現CODE所執行的功能不管是漲2%不管是漲4%不管是漲6%

煩請查看一下感謝您

if barfreq<>"D" then raiseRunTimeError("限用日頻率!");

if GetSymbolInfo("買賣現沖")=false then raiseRunTimeError("禁止當沖,排除監控!");

if close >=close[1]*1.02 and volume>500 then ret=1;

dragon888148 發文於   2026/07/03

圖片裏面只監控一支股票左下邊欄位、我都試過別的軟體同樣的條件都有股票呈現謝謝您

 

虎科大許教授 發文於   2026/07/03

你貼了一大堆圖片,其實都看不清楚監控的商品是哪一檔有問題。若是符合條件卻沒有警示?有哪些股票?若是不符合條件的卻警示?有哪些股票?你所謂可當沖的股票卻被禁止,是哪幾檔呢?提供這些訊息會比你貼一大堆圖,對解決問題有幫助。

dragon888148 發文於   2026/07/03

教授很抱賺一股腦兒將那麼多的資料扔給您那我就一步步來

首先我定設的條件敘述如下

盤中漲2%、成交量大於500張、排除不能當沖的股票不要呈現出來符合上這三個條件才呈現出來

if barfreq<>"D" then raiseRunTimeError("限用日頻率!");

if GetSymbolInfo("買賣現沖")=false then raiseRunTimeError("禁止當沖,排除監控!");

if close >=close[1]*1.06 and volume>3000 then ret=1;

8點39分0%的也出現-一般是開盤有符合上述3個條件才呈現下圖明顯沒有符合為什會出現

截圖圖片

下圖是系統禁止不能當沖的股票可是這檔是可以當沖的群益代號009823

截圖圖片

還有就是盤中我試了幾個條件就是下方的敘述只是改漲的%成交量大於多少、我拿別的程式比較一個是三竹資訊、一個飆股基因同樣的

條件同樣時間全球贏家應該的出現的股票都沒有過濾出來(因為太多無法一一列出)不知何原因煩請查一下感謝您

if barfreq<>"D" then raiseRunTimeError("限用日頻率!");

if GetSymbolInfo("買賣現沖")=false then raiseRunTimeError("禁止當沖,排除監控!");

if close >=close[1]*1.06 and volume>3000 then ret=1;

dragon888148 發文於   2026/07/03

改正我早上是下方的敘述

if barfreq<>"D" then raiseRunTimeError("限用日頻率!");

if GetSymbolInfo("買賣現沖")=false then raiseRunTimeError("禁止當沖,排除監控!");

if close >=close[1]*1.02 and volume>500 then ret=1;

虎科大許教授 發文於   2026/07/03

(1)現在收盤了,我改用選股腳本測試,009823是可以買賣現沖的。

if GetSymbolInfo("買賣現沖")=false then raiseRunTimeError("禁止當沖,排除監控!");

if symbol="009823.TW" then

ret=1;

outputField1(GetSymbolInfo("買賣現沖"));

(2)8點39分還沒開盤。你應該是用自動洗價才會顯示執行結果。在還沒開盤前的試撮期間,今天的價格還沒進來,Close是昨天的收盤價,Close[1]是前天的收盤價。若你希望得到開盤後的結果,一是不要用自動洗價。二是用時間控制什麼時候才開始執行程式。若你希望開盤才開始洗價,可以加條件currentTime>=090000。程式碼可修改如下:

if barfreq<>"D" then raiseRunTimeError("限用日頻率!");

if GetSymbolInfo("買賣現沖")=false then raiseRunTimeError("禁止當沖,排除監控!");

if currentTime>=090000 then

  if close >=close[1]*1.02 and volume>500 then ret=1;

 

dragon888148 發文於   2026/07/03

您好上面提到不要用自動洗價、要用那一個方式謝謝煩請告知

您好現在提供這個股票009823.TW加它加入的方式

可是我需要是一但所設的條件成立這些都不該出現、只有符合條件的才出來、沒有時間去設這些、我不能知道下次又有那一個股票出現相同的狀況、是否QX的引擎有問題、請問這是否能改進

if GetSymbolInfo("買賣現沖")=false then raiseRunTimeError("禁止當沖,排除監控!");

if symbol="009823.TW" then

ret=1;

outputField1(GetSymbolInfo("買賣現沖"));

以下是教授新提供的敘述

這是說9點開始運做、不行當沖的股票擋掉跳出"禁止當沖,排除監控!"'的訊息、盤中股價漲2%、盤中成交量大於500張同時符合上面那3個條件的股票才會呈現出來請問是對的嗎?煩請告知我謝謝

我要的就是我盤中設定漲2%、成交量大500張、排除不能當沖的股票、只要同時符合以上三條件即時呈現股票的資訊

以及下面的那4個敘述需要重新排嗎?誰是第1、誰是第2、誰是第3、誰是第4、還是您認這樣就行、煩請告知我謝謝

if barfreq<>"D" then raiseRunTimeError("限用日頻率!");

if GetSymbolInfo("買賣現沖")=false then raiseRunTimeError("禁止當沖,排除監控!");

if currentTime>=090000 then

 

 if close >=close[1]*1.02 and volume>500 then ret=1;

 

祝您全家假期愉快

虎科大許教授 發文於   2026/07/03

(1)我提供測試009823的腳本是選股腳本,並非你要的警示腳本。

(2)勾選逐筆洗價即可。不需要勾選自動洗價。

(3)若你要的是盤中漲2%、成交量大500張、排除不能當沖的股票、只要同時符合以上三條件即時呈現股票的資訊,腳本可撰寫如下:

if barfreq<>"D" then raiseRunTimeError("限用日頻率!");
if GetSymbolInfo("買賣現沖")=false then raiseRunTimeError("禁止當沖,排除監控!");
if currentTime>=090000 then
    if close >=close[1]*1.02 and volume>500 then ret=1;

 

dragon888148 發文於   2026/07/04

感謝您的回覆星期一測試再跟您報告假日愉快

dragon888148 發文於   2026/07/06

教授您好不知是不是我設定錯誤我將相關設定以圖片呈現給您看煩麻煩您了

教授您好下面是您是供的CODE在盤中警示中一個股票都沒有以及觸發紀錄可以現沖的股票

if barfreq<>"D" then raiseRunTimeError("限用日頻率!");
if GetSymbolInfo("買賣現沖")=false then raiseRunTimeError("禁止當沖,排除監控!");
if currentTime>=090000 then
    if close >=close[1]*1.02 and volume>500 then ret=1;
請看下圖這是我加入雷達的全部過程請問我那裏錯了謝謝您

教授要我改成勾選逐筆洗價請看下圖

請看下圖這是可以當沖卻被禁止的相關股票還有很多無法一一呈現如果、如果引擎正常腳本正確應該不會出現

以下是我加入即時控監控的圖片

以下是加入即時控監一張股票都有呈現

 

虎科大許教授 發文於   2026/07/06

沒看到貼圖且你貼的程式碼很難閱讀。另外,請提供設定畫面及有問題的股票。

dragon888148 發文於   2026/07/06

系統上面的CODE不是我貼的系統有問題我重寫一次不知何故圖片無法插入

我用E-MAIL寄給您了煩煩看E-MAIL

dragon888148 發文於   2026/07/06

不知可否收到我的E-MAIL

虎科大許教授 發文於   2026/07/06

我並非XQ員工,收不到你的信。有問題請在論壇討論。

dragon888148 發文於   2026/07/07

教授請問盤中外盤成交量大於內盤成交量3000張才會呈現出來股票請問該如何寫謝謝

虎科大許教授 發文於   2026/07/07

若你指的是開盤至今的外盤累積成交量大於內盤累積成交量超過3000張,則指令可撰寫如下:

if GetField("外盤量","D")-GetField("內盤量","D")>3000 then ret=1;

dragon888148 發文於   2026/08/03

教授您好我是玩當沖的從9點一開始也就是盤中、股票大於500元以上的我要把它排除不要出現、XS腳本該如何排除、程式碼該如何寫謝謝您

 

虎科大許教授 發文於   2026/08/03

你問的問題已經與貼文的標題不一樣。這篇貼文已經太長,要看最新的一篇需要翻好幾頁。若主題不同,可新增主題,這樣大家都比較輕鬆。要排除股價超過500元的股票,程式碼可撰寫如下:

if c>500 then raiseRunTimeError("股價太高,排除監控!");

發表回覆
Close